我即将在 Flask/Google App Engine 中实现推送任务队列。本质上,我想发布到 API 并在任务队列中执行底层工作。
初始入口点是 REST API (flask_restful)
class FTRecordsAPI(Resource):
def post(self):
arguments = self.reqparser.parse_args()
json_records = arguments.get('records')
user = User.query(...).get()
if user:
taskqueue.add(url='/worker/', params={'user': user})
return '', 201
else:
return '', 401
worker 在 url.py 中被定义为一个视图:
app.add_url_rule('/worker', 'worker',
view_func=csrf_protect.exempt(TaskView.as_view('taskView')))
TaskView 是:
from flask.globals import request
class TaskView(MethodView):
def post(self):
user = request.json['user']
return "OK"
奇怪的是,当我在TaskView
请求对象中无处调试时,我发送到/worker
. 但是我在那里找到records
了上一次调用的对象?!
请问我错过了什么?