python - 如何使用 App Engine 中的任务队列 Python API 传递压缩数据?

标签 python google-app-engine zlib task-queue

我正在尝试将压缩数据与任务队列中的任务一起使用,如下所示:

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/

相关文章:

c++ - 使用 zlib 从 pdf 中提取文本

c++ - Boost Zlib的解压缩在Windows上崩溃

python - 变为 false 后如何返回到代码开头?

python - 解释器会编译Python脚本吗?

python - 我可以在生成随机值时指定一个 numpy dtype 吗?

python - 将单选按钮的输入获取到变量 [Tkinter]

python - 需要在原始页面而不是重定向页面上提供表单值响应

javascript - 使用 jinja2 将 unicode 字符串交给 javascript

java - 在 Google App Engine 托管的应用程序中解析 PDF 文件中的文本

c++ - 如何获取Firefox的一些默认配置信息?