gpt4 book ai didi

swift - Siesta是否支持HTTP长轮询

转载 作者:行者123 更新时间:2023-11-28 06:06:52 25 4
gpt4 key购买 nike

我有一个 API 端点,它以无穷无尽的 JSON 对象序列进行响应。喜欢

GET/commands?since=112233
{“cmd”:“我的命令”,“参数”:[...]}
{“cmd”:“其他命令”,“参数”:[...]}
...
session 几乎永远不会结束(服务器有一个最终超时的设置,但典型值是数十万秒)。

有没有办法在 Siesta 中使用这样的 API?

最佳答案

不,Siesta 不直接支持这一点。 Siesta 的一个基本假设是 URL 是具有(有限)状态的资源,并且您希望观察该状态随时间的变化。因此,Siesta 在实际开始解析并发布结果之前期望得到完全具体化的响应。您所描述的是 HTTP 的另一种用法,它不适合 Siesta 的模型。

现在,如果您获得的 JSON 对象序列可以合理地解释为代表资源随时间变化的连续状态序列,那么您就可以制作自己的在 Siesta 之外进行网络调用,然后使用 Resource.overrideLocalData(…)在更新到达时发布更新。

但是,查看您提供的示例数据,这看起来更像是一系列操作事件,而不是一系列状态。 Siesta 以资源为中心的世界观可能不太适合这种情况。如果问题是“事物 X 的当前状态是什么?”,午睡会给您带来最大的好处。对您的 API 来说是有意义且自然的。

关于swift - Siesta是否支持HTTP长轮询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47935934/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com