gpt4 book ai didi

reactjs - 在 Axios 中的 GET 方法 URL 搜索参数中发送嵌套对象

转载 作者:行者123 更新时间:2023-12-03 19:45:18 26 4
gpt4 key购买 nike

我正在尝试使用 URL 搜索参数发送请求,如下所示,但我无法访问服务器端的嵌套对象 过滤器

axios.get('/get handler', {
params: {
room: 1,
filter: {
fan: 2,
table: 1,
}
});

我可能做错了什么?
我在服务器端使用 Django restFramework 3,但我无法访问该方法中的 filter 键。我正在使用 request.query_params 访问查询参数,但是当我执行 request.query_params.get('filter') 时,我得到了 none

最佳答案

您需要序列化您的参数,并且可以通过编写 this github issue 中提到的小配置来完成,

通常你会在 main.js 文件或应用程序的顶级文件中有这个配置,但这同样取决于你想要执行它的时间

// main.js
import axios from "axios";

// Format nested params correctly
axios.interceptors.request.use(config => {
window.console.log(config);

config.paramsSerializer = params => {
// Qs is already included in the Axios package
return Qs.stringify(params, {
arrayFormat: "brackets",
encode: false
});
};

return config;
});

从 axios 0.18.0 开始:
// main.js
import axios from "axios";
import Qs from 'qs';

// Format nested params correctly
axios.interceptors.request.use(config => {

config.paramsSerializer = params => {
// Qs is not included in the Axios package
return Qs.stringify(params, {
arrayFormat: "brackets",
encode: false
});
};

return config;
});

关于reactjs - 在 Axios 中的 GET 方法 URL 搜索参数中发送嵌套对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54977470/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com