V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
这是一个专门讨论 idea 的地方。

每个人的时间,资源是有限的,有的时候你或许能够想到很多 idea,但是由于现实的限制,却并不是所有的 idea 都能够成为现实。

那这个时候,不妨可以把那些 idea 分享出来,启发别人。
lhx2008
V2EX  ›  奇思妙想

有个想法,整合 hexo 静态博客/spa 单页 和 语雀 API ,实现一次部署,全功能可视化后台 写博客

  •  
  •   lhx2008 · 2018-05-11 00:28:25 +08:00 · 4971 次点击
    这是一个创建于 2171 天前的主题,其中的信息可能已经有所发展或是发生改变。
    hexo 使用的时候,原生 markdown 写起来比较原始,部署更新多有不便,管理起来也比较散乱,评论也不方便使用。

    语雀 yuque.com 基于 markdown,有强大的可视化 markdown 编辑器,公示编辑器,自动图床,并且提供完整的 API 供外部调用。带有评论功能和完善的结构管理。并且有阿里保证运行稳定可靠。

    我有个想法,就是 hexo 部署之后,从语雀 API 拿数据,这样子就只用在自己服务器 /github.io 这边一次部署。以后的文章就只要在语雀上面更新即可,hexo 这边打开会自动从语雀拿数据。

    或者,有个更加简单的 spa 单页,里面显示 文章列表 和 关于,文章列表从语雀 API 中取出,具体文章仍跳转到语雀。

    语雀 API: https://yuque.com/yuque/developer

    共享一个想法,不知道有没有大佬能有空弄出来了,感觉这是船新的写博客方式。当然有其他建议也可以在下面提出来。
    15 条回复    2018-05-14 15:00:53 +08:00
    wlwood
        1
    wlwood  
       2018-05-11 07:42:00 +08:00 via Android
    你想多了。部署后的 hexo,就是纯静态。纯静态去调云雀 API,意味着你要暴露 token …
    lhx2008
        2
    lhx2008  
    OP
       2018-05-11 07:54:12 +08:00 via Android
    TIP💡: 别忘了,假如需要获取的数据是“公开”的,那是不需要用户认证的哦!
    from 上面的 url
    lhx2008
        3
    lhx2008  
    OP
       2018-05-11 07:54:26 +08:00 via Android
    @wlwood 忘记 @你了
    wlwood
        4
    wlwood  
       2018-05-11 08:04:48 +08:00 via Android
    哦,公开的那就可以😁😁😁😁
    yuanfnadi
        5
    yuanfnadi  
       2018-05-11 08:10:04 +08:00 via iPhone
    我靠 我也是这么想的
    yuanfnadi
        6
    yuanfnadi  
       2018-05-11 08:18:44 +08:00 via iPhone   ❤️ 1
    分享一下我的思考

    1 语雀文章更新后发送 Webhook,然后程序自动根据语雀 API 下载 Markdown 原文放到 hexo 目录下。然后该怎么办就怎么办 目前遇到的困难是免费版的 webhook 暂未开放 需要自己程序不断去轮训
    2 单页程序使用语雀 API 来访问 好处是语雀文章 API 不需要 token 就可以获取 缺点是单 IP 有访问限制。这个对 hexo 的改造会大很多。
    jy02201949
        7
    jy02201949  
       2018-05-11 08:23:12 +08:00   ❤️ 1
    楼主肯定是渣渣辉,想不到还会编程,厉害
    lhx2008
        8
    lhx2008  
    OP
       2018-05-11 08:30:06 +08:00 via Android
    @yuanfnadi webhook 可不可以考虑用浏览器脚本外挂?如果是直拿数据的话,确实 hexo 不太合适弄。可能要另起炉灶了。
    bullettrain1433
        9
    bullettrain1433  
       2018-05-11 08:34:30 +08:00
    Travis CI 了解下
    yuanfnadi
        10
    yuanfnadi  
       2018-05-11 08:43:11 +08:00 via iPhone
    我现在是博客代码放 Github 上,每次提交 commit 自动执行 CI,把源码拉到一个 Node 的镜像里,构建完成以后再把 HTML 放 Nginx 的镜像里 然后执行。除了没有图床以外已经方便了,就没有考虑写语雀相关的脚本。
    hellocy
        11
    hellocy  
       2018-05-11 17:42:55 +08:00
    lhx2008
        12
    lhx2008  
    OP
       2018-05-13 08:36:18 +08:00
    @wlwood
    @yuanfnadi
    @jy02201949
    按照这个思路,弄了个小玩具
    https://www.v2ex.com/t/454380
    quietcoder
        13
    quietcoder  
       2018-05-14 11:33:23 +08:00
    针对楼主的第一句话,提出一种解决方案:

    配置 travis ci,在 master 更新后 build 页面并发送到 gh-pages 分支,然后新增编辑的过程放在 github 上,编辑完成后在 master 后面直接加 commit,页面上即可实现新增编辑文章的功能,最后评论使用 gittalk。

    虽然同样要写 md,不过省去了部署更新的问题,评论也比较方便。
    xhinliang
        14
    xhinliang  
       2018-05-14 12:39:07 +08:00
    @quietcoder 我就是这么做的。不过评论使用的是 disque
    flinhong
        15
    flinhong  
       2018-05-14 15:00:53 +08:00
    @hellocy 我也部署在这里
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1077 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 23:26 · PVG 07:26 · LAX 16:26 · JFK 19:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.