V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
JoeJoeJoe
52.44D
V2EX  ›  Planet

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

  •  
  •   JoeJoeJoe ·
    PRO
    · 1 天前 · 354 次点击

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

    @kai @livid

    14 条回复    2025-10-21 00:03:07 +08:00
    Livid
        1
    Livid  
    MOD
    PRO
       1 天前
    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
       1 天前   ❤️ 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
       1 天前
    @Livid #2 我应该是拒绝了下载这个压缩包, 所以一直失败.

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

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

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

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

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

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


    @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
       1 天前
    @JoeJoeJoe #11 石锤了, 如果将 planet 的数据位置放在 icloud 中, 这个 web 站点就会失效.

    看样子是一个 bug @Kai 佬可以复现一下
    Kai
        13
    Kai  
       1 天前
    @JoeJoeJoe 收到,正在检查。
    Kai
        14
    Kai  
       1 天前   ❤️ 1
    https://github.com/Planetable/Planet/commit/5145c30fd62404b44bc3c43c1e3fc84ec7fc68e4
    这个问题修好了,但是 Web App Updater 解压缩那一步还会有问题( iCloud Drive 沙盒权限问题,我还在研究)。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   3502 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 05:03 · PVG 13:03 · LAX 22:03 · JFK 01:03
    ♥ Do have faith in what you're doing.