我正在尝试一个使用Python模块的字符串反转的基本示例,我的本地主机是在4730端口上使用IIS设置的,但是我得到了错误
raise UnknownCommandError(missing_callback_msg)
UnknownCommandError: Could not handle command: 'GEARMAN_COMMAND_TEXT_COMMAND' - {'raw_text': 'HTTP/1.1 400 Bad Request\r'}Client.py
import gearman
# setup client, connect to Gearman HQ
gm_client = gearman.GearmanClient(['localhost:4730'])
print 'Sending job...'
request = gm_client.submit_job('reverse', 'Hello World!')
print "Result: " + request.resultWorker.py
import gearman
gm_worker = gearman.GearmanWorker(['localhost:4730'])
# define method to handled 'reverse' work
def task_listener_reverse(gearman_worker, gearman_job):
print 'reporting status'
return reversed(gearman_job.data)
gm_worker.set_client_id('your_worker_client_id_name')
gm_worker.register_task('reverse', task_listener_reverse)
gm_worker.work()对于为什么会发生这种情况以及如何解决这一问题,有任何建议吗?
发布于 2015-08-28 04:57:00
不要使用return reversed(gearman_job.data),而是尝试使用return ''.join([i for i in reversed(gearman_job.data[::1])])。
返回reversed(...)将给您一个Type Error。
发布于 2018-04-20 13:47:44
目前版本的变速箱有一个不同的进口结构。你需要说from gearman.worker import GearmanWorker和from gearman.client import GearmanClient。
此外,返回应该是return ''.join([i for i in reversed(gearman_job.data[::1])]),以得到一个反向字符串。
https://stackoverflow.com/questions/31226942
复制相似问题