有没有一种方式可以通过 api 来创建 planet 文章?开启 api? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
JoeJoeJoe
V2EX    Planet

有没有一种方式可以通过 api 来创建 planet 文章?开启 api?

  •  
  •   JoeJoeJoe
    PRO
    36 天前 2346 次点击
    这是一个创建于 36 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如果开启这个 api 可以实现的话, 那么我得检查一下为什么我本地这个 api 调用/app/会 404 了.

    @kai @livid

    15 条回复    2025-10-24 09:37:34 +08:00
    Livid
        1
    Livid  
    MOD
    PRO
       36 天前
    https://docs.planetable.eth.limo/api/

    https://github.com/Planetable/Planet/blob/main/Technotes/API.md

    /app/ 这个目录在磁盘上的位置是:

    ~/Library/Containers/xyz.planetable.Planet/Data/Documents/Planet/Public
    Livid
        2
    Livid  
    MOD
    PRO
       36 天前   1
    这个 /app/ 目录的添加行为,是在 Planet 启动时,会从这个仓库下载一个压缩包,然后解压:

    https://github.com/Planetable/planet-web

    所以也可以在 ~/Library/Containers/xyz.planetable.Planet/Data/Documents/Planet/Public 下用这个方式获得 /app/ 目录:

    cd ~/Library/Containers/xyz.planetable.Planet/Data/Documents/Planet/Public
    git clone https://github.com/Planetable/planet-web app-dev

    然后访问:

    http://localhost:8086/app-dev/
    JoeJoeJoe
        3
    JoeJoeJoe  
    OP
    PRO
       36 天前
    @Livid #2 我应该是拒绝了下载这个压缩包, 所以一直失败.

    ok, 破案了 :)
    Livid
        4
    Livid  
    MOD
    PRO
       36 天前
    @JoeJoeJoe 你是怎么拒绝的?
    JoeJoeJoe
        5
    JoeJoeJoe  
    OP
    PRO
       36 天前
    @Livid #4 我先完全卸载掉了我的 planet, 然后重新下载了一份, 当我安装完 planet 的时候,我就切到其他工作目录去了,过了一会突然弹了一个窗口,提示需要我 github 的钥匙串内容,我下意识的就拒绝了,后来反应过来可能是 planet 要下载这个仓库.

    ps: 最开始我打不开/app/的时候,我有去翻下文档, https://docs.planetable.eth.limo/api/ 这个文档我有翻到过, 所有操作都一致, 后来翻阅历史博客, 发现这个 webapp 好像不是捆绑到包内的,才怀疑是我拒绝造成的问题.
    JoeJoeJoe
        6
    JoeJoeJoe  
    OP
    PRO
       36 天前
    @Livid
    这个地方的默认文件夹我是有过改动的

    Livid
        7
    Livid  
    MOD
    PRO
       36 天前
    @JoeJoeJoe 这个下载操作是普通的 http 请求,不会使用到和你的 git 配置有关的东西,具体的代码在这里:

    https://github.com/Planetable/Planet/blob/main/Planet/API/WebAppUpdater.swift
    JoeJoeJoe
        8
    JoeJoeJoe  
    OP
    PRO
       36 天前
    @Livid #7 我一会确认一下,我电脑里安装了 github desktop 不知道会不会有影响. 从我对这个提示有印象以来,好像只弹过两次, 我再确认一下.

    感谢回复.
    Livid
        9
    Livid  
    MOD
    PRO
       36 天前
    这个仓库里可以看到所有创建、修改、删除操作的例子:

    https://github.com/Planetable/planet-web
    JoeJoeJoe
        10
    JoeJoeJoe  
    OP
    PRO
       36 天前
    @Livid #9 加到 todo 里了 哈哈哈
    JoeJoeJoe
        11
    JoeJoeJoe  
    OP
    PRO
       36 天前


    @Livid 我的 web 版本也可以显示出来了, 简单记录一下我的操作

    开始我将 app 文件放在~/Library/Containers/xyz.planetable.Planet/Data/Documents/Planet/Public 下然后启动 server, 访问/app/还是 404, 这个时候我的真实 planet 文件目录还是在 icloud 中的

    然后我将 app 文件放在 icloud 目录下, 然后启动 server, 访问/app/还是 404

    这期间我单独起了一个 http server 来检查 app 代码, 发现是找不到 my 之类的文件.

    然后我将 icloud 中的文件夹备份,复制到默认目录:~/Library/Containers/xyz.planetable.Planet/Data/Documents/Planet/下, 然后点击设置里面的数据文件位置->重置, 然后重启 planet

    再次开启 planet, 访问/app/ 神奇的事情出现了, 我的 web app 可以访问了

    然后我又将数据文件指向到 icloud, 并删除了默认位置的所有文件, 重启访问, /app/还是可以访问到的.

    具体的原因没有检查出来, 但是有一个点比较可以, 就是我原始的 public 中是没有 app 这个文件夹的, 估计是初始化之类的操作出异常了, 进而影响了整个后续操作. 有时间在去追代码吧, 最少现在这个不是阻碍我的问题了.
    JoeJoeJoe
        12
    JoeJoeJoe  
    OP
    PRO
       36 天前
    @JoeJoeJoe #11 石锤了, 如果将 planet 的数据位置放在 icloud 中, 这个 web 站点就会失效.

    看样子是一个 bug @Kai 佬可以复现一下
    Kai
        13
    Kai  
       36 天前
    @JoeJoeJoe 收到,正在检查。
    Kai
        14
    Kai  
       35 天前   1
    https://github.com/Planetable/Planet/commit/5145c30fd62404b44bc3c43c1e3fc84ec7fc68e4
    这个问题修好了,但是 Web App Updater 解压缩那一步还会有问题( iCloud Drive 沙盒权限问题,我还在研究)。
    JoeJoeJoe
        15
    JoeJoeJoe  
    OP
    PRO
       32 天前
    @Kai #14 佬能发个测试版本么?
    关于     a href="/help" class="dark" target="_self">帮助文档     自助推广系统     博客     API     FAQ     Solana     2871 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 14:08 PVG 22:08 LAX 06:08 JFK 09:08
    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