Python gearman收到非二进制参数

时间:2014-12-23 15:38:01

标签: python django python-gearman

我在装备中遇到错误。尝试任何类似的,只发送一个字符串字母或数字或字符串数​​字,但总是得到这个错误请帮助...(相同的代码工作其他视图)

Request Method: POST
Request URL:    http://local.example.com:8000/business/user-panel
Django Version: 1.6.6
Exception Type: ProtocolError
Exception Value:    
Received non-binary arguments: {'unique': 'ab69c55005d118f92e27dcaa3a9bb5d7', 'task': u'task_name', 'data': "1010"}
Exception Location: /home/xcoder/NopyFlexiEnv/lib/python2.7/site-packages/gearman/protocol.py in pack_binary_command, line 242
Python Executable:  /home/xcoder/NopyFlexiEnv/bin/python2.7
Python Version: 2.7.6

1 个答案:

答案 0 :(得分:1)

阅读source code后,我发现齿轮手客户不支持unicode 。 将参数的类型更改为strbytes将解决您的问题。

client.submit_job("task1")   # error: Received non-binary arguments
client.submit_job(b"task1")  # ok