我有一个奇怪的问题。 我想要做的是将我的GAE版本从1.3.5更新到1.4.1 / 1.4.0。 安装后,我想运行dev_appserver。 但是有一个错误:
ERROR 2011-01-19 21:50:11,262 dev_appserver.py:3214] Exception encountered handling request
Traceback (most recent call last):
File "C:\Program Files\Google\google_appengine\google\appengine\tools\dev_appserver.py", line 3184, in _HandleRequest
response = RewriteResponse(outfile, self.rewriter_chain)
File "C:\Program Files\Google\google_appengine\google\appengine\tools\dev_appserver.py", line 2882, in RewriteResponse
response_rewriter(response)
TypeError: DownloadRewriter() takes exactly 2 arguments (1 given)
注意:我没有更改我的代码,它在GAE 1.3.5上运行良好 谢谢你的回答。
答案 0 :(得分:2)
问题已经解决了。 我们在“不同文件夹”再次重新安装了gae “不同文件夹”是关键。 如果您在默认(相同)文件夹(c:\ program files \ google \ google_appengine)中卸载gae,则问题仍然存在。
所以我们将它安装在c:\ program files \ goole \ google_appending_x(x表示任何单词)。 然后它可以工作。
答案 1 :(得分:0)
问题解决了。
我在上面重新安装GAE 3.5时发现了。我的C:\ Program Files \ Google \ google_appengine \ google \ appengine \ tools \ dev_appserver.py
第2887行:def RewriteResponse代码不正确。 正确的版本是:
def RewriteResponse(response_file,
response_rewriters=None,
request_headers=None):
if response_rewriters is None:
response_rewriters = CreateResponseRewritersChain()
response = AppServerResponse(response_file)
for response_rewriter in response_rewriters:
if response_rewriter.func_code.co_argcount == 1:
response_rewriter(response)
else:
response_rewriter(response, request_headers)
return response
但我的版本是
def RewriteResponse(response_file,
response_rewriters=None,
request_headers=None):
if response_rewriters is None:
response_rewriters = CreateResponseRewritersChain()
response = AppServerResponse(response_file)
for response_rewriter in response_rewriters:
response_rewriter(response)
return response
没有if-else。 因此解决方案是在c:\ Program files \ Google \ google_appengine_x ....安装GAE .... 不在默认文件夹中。 那就是对的。 ^^