我正在尝试将压缩数据与任务队列中的任务一起使用,如下所示:
t = taskqueue.Task(url='/tasks/queue',
params={'param': zlib.compress(some_string)}
但是当我尝试像这样在队列处理程序中解压缩它时
message = self.request.get('param')
message = zlib.decompress(message)
我收到这个错误:
UnicodeEncodeError: 'ascii' codec can't encode character u'\u06b8' in position 2: ordinal not in range(128)
有人知道这里发生了什么吗?有变通办法吗?
最佳答案
不使用参数,而是使用负载,它在请求正文中包含您的数据,未编码。然后您可以使用 zlib.decompress(self.request.body)
来检索数据。
关于python - 如何使用 App Engine 中的任务队列 Python API 传递压缩数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2160011/