有个想法,整合 hexo 静态博客/spa 单页 和 语雀 API ,实现一次部署,全功能可视化后台 写博客 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
这是一个专门讨论 idea 的地方。

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

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

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

  •  
  •   lhx2008 2018-05-11 00:28:25 +08:00 5629 次点击
    这是一个创建于 2761 天前的主题,其中的信息可能已经有所发展或是发生改变。
    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 目录下。然后该怎么办就怎么办 目前遇到的困难是免费版的 webhok 暂未开放 需要自己程序不断去轮训
    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
    按照这个思路,弄了个小玩具
    t/454380
    quietcoder
        13
    quietcoder  
       2018-05-14 11:33:23 +08:00
    针对楼主的第一句话,提出一种解决方案:

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

    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     Solana     1075 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 17:31 PVG 01:31 LAX 09:31 JFK 12:31
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86