我有这条路线:
@bp.route('coordinates/<int:id>/update', methods=['PATCH'])
def update_coordinates(id):
schema = CoordinatesSchema()
coords = Coordinates.query.get_or_404(id)
new_data = request #????
# some another logic
return jsonify({"result": "GOOD"}), 200
我正在传递数据以在身体中进行更新,例如dict:{ "title": "newtitle"}
,但是我如何在路线内获取此信息?
答案 0 :(得分:1)
使用PATCH请求,您可以像处理其他所有请求类型(例如POST)一样检索请求数据。根据发送数据的方式,有几种检索数据的方法:
以application/json
发送:
data = request.json
以application/x-www-form-urlencoded
(表单数据)发送
data = request.form
以没有Content-Type
头的原始正文发送:
data = request.data
最后一个将为您提供一个字节字符串,然后您必须对其进行相应处理。对于您的用例,我建议使用第一个示例,并在发送PATCH请求时添加一个Content-Type: application/json
标头。