You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flask Restful中GET请求参数解析失败问题求助

解决Flask-RESTful GET请求参数解析400错误

你的问题根源在于reqparse.RequestParser默认会从请求的JSON请求体中解析参数,但GET请求的参数是通过URL的query string(即?后拼接的内容)传递的,导致解析失败返回400错误。

解决方案

在初始化RequestParser时指定location='args',或者在add_argument方法中单独指定该参数,让解析器从URL的query string中读取参数。

修改后的代码示例

方法1:全局指定解析位置

from flask_restful import Resource, reqparse

class View_Result(Resource):
    def get(self):
        parser = reqparse.RequestParser(location='args')
        parser.add_argument('aid', type=str)
        print('Here 1')
        data = parser.parse_args()
        print('Here 2')
        return data  # 可选:返回解析结果用于测试

方法2:为单个参数指定解析位置

from flask_restful import Resource, reqparse

class View_Result(Resource):
    def get(self):
        parser = reqparse.RequestParser()
        parser.add_argument('aid', type=str, location='args')
        print('Here 1')
        data = parser.parse_args()
        print('Here 2')
        return data

原理说明

指定location='args'后,解析器会从URL的查询参数中读取aid的值,而非尝试解析JSON请求体,完美适配GET请求的参数传递方式,同时也会消除错误提示中关于Content-Type的问题。

内容的提问来源于stack exchange,提问作者Amit Pathak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 22:40:30