gpt4 book ai didi

Python GAE : How to return JSON-formated response even when an error occurs?

转载 作者:行者123 更新时间:2023-12-01 05:56:44 26 4
gpt4 key购买 nike

在我的 GAE 应用程序中,我有几个返回 JSON 格式响应的请求处理程序。当调用其中之一时,如果发生错误(异常或编程错误),则输出不是 JSON:而是堆栈跟踪。

我需要的是:

Output without error:
{
"foo" : 1
"bar" : 2
"status" : "OK"
}

Output when an error occurs:
{
"status" : "ERR"
"errorMessage" : "An error occurred!"
}

我的问题是:确保在任何情况下输出都是 JSON 格式的响应的最佳实践是什么?当然,如果每个请求处理程序都有一个通用的解决方案那就太好了。

如有任何帮助,我们将不胜感激。

最佳答案

当然 - 使用 ereporter 类(此处描述: https://stackoverflow.com/a/4296664/336505 ),但创建一个自定义 BaseHandler 将未捕获的异常格式化为 JSON 输出:

class BaseHandler(webapp.RequestHandler):
def handle_exception(self, exception, debug_mode):
self.response.headers['Content-Type'] = 'application/json'
self.response.out.write(etc, etc) # format the exception

关于Python GAE : How to return JSON-formated response even when an error occurs?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12155868/

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