我在 axios 中发送带有正文的 get 请求时遇到问题。它不会将请求的正文传递给后端。
Axios 代码如下所示
const FunctionName = (environment, page_num) => {
axios.get(API_URL,
{ params:
{
environment,
page_num
},
}).then(res => {
console.log(res);
}).catch(err => {
console.log(err.response.data);
});
}
我使用 Django 作为我的后端,我收到了空正文,即 {},这会导致发送到后端的错误请求。我经历了几个堆栈溢出问题,但没有一个对我有帮助。任何人都可以帮我解决这个问题。
更新
我的 Django 代码如下所示
class TestView(APIView);
def get(self, request):
environment = request.data['environment']
page_num = request.data['page_num']
...
...
在这里,当我无法获取环境或 page_num 数据时。当我从邮递员发送带有 get 调用和正文请求中的内容的相同请求时,它接受并将响应发回。
重新更新
我注意到我们必须使用 request.query_params['some_val'] 以防我们在来自 Axios 的请求中传递正文,但是如果我们在邮递员中发送带有正文的请求,则 request.query_params['some_val'] 将不起作用。我不确定这是否是正常行为!