首页 > 解决方案 > GAE 任务队列不再将有效负载传递给 web2py 函数

问题描述

这段代码已经工作了几年,但由于我不知道的原因,它已经停止工作。

此函数继续正确创建任务。

def send_task():
        from google.appengine.api import taskqueue
        json_data = ...
        task = taskqueue.Task(url=..., countdown=2, payload=json_data)
        task.add()

处理 url 被传递给:

in db.py
openings_service = Service()


in controller...
@openings_service.json
def opening_task_queue():
    body_data = request.body.getvalue()

在过去的几年里body_data,人口众多,加工仍在继续。但是上周,没有更改我的代码,request.body 不再存在。

我一直在运行 Web2py R-2.14.6,但升级到 R-2.15.0b2 打破了我需要声明函数的方式。尝试 R-2.15.4 没有帮助,R-2.18.5 也没有

在处理历史上有效的 Google 任务的函数中)的值request.body是:

<open file '<fdopen>', mode 'w+b' at 0x2b31c3ed9930>

以前这包含 json 有效负载。却让<fdopen>我不知所措。

标签: google-app-engineweb2pytask-queue

解决方案


推荐阅读