无法使用Python27 SDK在Google Appengine上运行推送队列任务



当尝试在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()))))

最新更新