python – Tornado芹菜不能使用gen.Task或CallBack

python – Tornado芹菜不能使用gen.Task或CallBack,第1张

概述class AsyncHandler(tornado.web.RequestHandler): @tornado.web.asynchronous def get(self): tasks.sleep.apply_async(args=[5], callback=self.on_result) def on_result(self, response):
class AsyncHandler(tornado.web.RequestHandler):    @tornado.web.asynchronous    def get(self):        tasks.sleep.apply_async(args=[5],callback=self.on_result)    def on_result(self,response):        self.write(str(response.result))        self.finish()

提出错误:

raise TypeError(repr(o) + " is not JsON serializable")TypeError: <bound method AsyncHandler.on_result of <__main__.AsyncHandler object at 0x10e7a19d0>> is not JsON serializable

经纪人和后端都使用redis,我刚从中复制过
https://github.com/mher/tornado-celery

当我使用amqp broker和redis后端时,它运行良好,但在使用redis代理时则不行.这是因为龙卷风异步不支持redis经纪人吗?

解决方法 The doc说:

NOTE: Currently callbacks only work with AMQP and Redis backends. To use the Redis backend,you must install tornado-redis.

因此龙卷风芹菜不支持redis作为经纪人…当我使用rabbitmq作为经纪人redis作为后端时它起作用.

总结

以上是内存溢出为你收集整理的python – Tornado芹菜不能使用gen.Task或CallBack全部内容,希望文章能够帮你解决python – Tornado芹菜不能使用gen.Task或CallBack所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1197240.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存