在我的Google App Engine应用程序中,我有一个处理程序,其中包含PUT请求的方法:
def postMethod(self, arg):
response = do_backend_work(arg)
if response.field is None:
self.error(502)
self.response.out.write(json.dumps(
{'message': "you've been a bad boy!"}))
else:
<deal with well-formatted requests here>
.
.
.
但是,当我收到response.field
为None
的请求时,请求以200返回。当我发现此错误时,我在{{1}之前插入raise Exception(str(self.response))
阻止作为一个完整性检查,并在日志中找到它:
else
我是否缺少关于App Engine如何处理请求的内容?
答案 0 :(得分:0)
经过一番生根,我发现了问题。在我的do_backend_work
函数中,有一个流氓打印语句劫持了输出流!故事的寓意是:不要在Google App Engine后端写入stdout。我正在为了后代的利益而发布这个问题。