我正在使用 Cloudant 来存储 json 对象。他们有一个 API,用于获取数据库中发生的变化的连续源。我想要做的是创建一个指向此端点的持久连接,并在每次更新此响应对象时调用一个函数(回调)。 Cloudant 在 Node-js 中有一个内置函数,但没有任何可以在 python 后台工作的函数(使用 v 2.7)。
我该如何解决这个问题?网上没找到有用的东西。 Cloudant 包中的内置函数在我拥有的 Flask API 应用程序中不起作用(它们只是使用永无休止的循环来检索更改)。
我的想法是代码看起来像这样:
def callBack(event):
print(event)
session(url="username:password.cloudant.com/test/_changes?feed=continous", callback=callBack, feed="live")
最佳答案
你需要一个事件循环(node 内置了这个,Python 没有)。我会看类似 gevent 的内容图书馆。
这里有一个教程展示了如何使用 gevent 进行长轮询:http://sdiehl.github.io/gevent-tutorial/#long-polling应该可以扩展以使用流式更改提要,例如 https://github.com/xpqz/pylon/blob/master/pylon.py#L165 。
关于python - 创建持续不断的变化提要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51708646/