gpt4 book ai didi

python - Tornado POST 请求的返回响应

转载 作者:行者123 更新时间:2023-12-02 00:33:15 25 4
gpt4 key购买 nike

我看过 Tornado 文档和示例,其中 self.write 方法被广泛用于在 HTML 上呈现某些值,其中 POST 请求在处理程序中运行。但是我找不到关于如何将响应返回给客户的明确说明。

例如,我正在从客户端调用 Tornado 服务器上的 POST 请求。接受post请求的代码是:

class strest(tornado.web.RequestHandler):
def post(self):
value = self.get_argument('key')
cbtp = cbt.main(value)

有了这个,我可以找到 cbtp 的值,并使用 self.write(cbtp),我可以用 HTML 打印它。但是,我想以 JSON 格式将此值返回给客户端,例如 {'cbtp':cbtp}我想知道如何修改我的代码以便将此响应发送到客户端,或者给我一些文档,其中对此进行了流畅的解释。

做类似的事情

res = {cbtp: cbtp}
return cbtp

抛出一个 BadYieldError: yielded unknown object

最佳答案

你只需要将输出类型设置为 JSON 和 json.dumps 你的输出。

通常我在名为 RESTRequestHandler 的父类中有 set_default_headers。如果您只需要一个返回 JSON 的请求,您可以在 post 调用中设置 header 。

class strest(tornado.web.RequestHandler):
def set_default_headers(self):
self.set_header("Content-Type", 'application/json')

def post(self):
value = self.get_argument('key')
cbtp = cbt.main(value)
r = json.dumps({'cbtp': cbtp})
self.write(r)

关于python - Tornado POST 请求的返回响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50949010/

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