当尝试在Google Appengine Python27 SDK(在Python 2.5上运行良好)上启动一个简单的推送队列任务时,我现在得到一个以:
结尾的追溯:File "c:program filesgooglegoogle_appenginegoogleappengineapitaskqueue
taskqueue_stub.py", line 1662, in ExecuteTask connection.putheader(header_key, header_value)
File "C:Python27libhttplib.py", line 924, in putheader str = '%s: %s' % (header, 'rnt'.join(values))
TypeError: sequence item 0: expected string, int found
上面的TypeError发生在
header = 'Content-Length'
values = (112,)
显然应该是values=('112',)
谢谢你的建议,
莫特
看起来像一个bug,已经报告了:Issue 6460: Development Server - taskqueue stub类型错误
要让它工作,你需要手动修补SDK,文件:google/appengine/api/taskqueue/taskqueue_stub.py,行看起来像:
headers.append(('Content-Length', len(task.body())))
修复:
headers.append(('Content-Length', str(len(task.body()))))