在 Axios 中更正 url 中的数组
Correct array in url in Axios
所以我最近开始使用 Axios 创建我的第一个项目。当我尝试从 API 中获取数据时,默认情况下(我认为)axios 给我一个 URL,例如:
/search?health[]=alcohol-free&health[]=celery-free&nutrient[]=calcium&nutrient[]=carbs
但是 API (Edamam API) 需要:
/search?health=alcohol-free&health=celery-free&nutrients%5BCA%5D=100-&nutrients%5BFAT%5D=100
我的参数:
const params = {
...other,
health: ["alcohol-free", "celery-free"],
nutrient: {
CA: "100-200",
FAT: "100" // under 100mg
},
}
我怎样才能纠正我的 URL 这样的。我不知道在哪里修复 axios 中的 URL。谢谢!
在调用 axios
之前使用 qs
程序包将您的请求字符串化
const qs = require('qs')
const params = {
...other,
health: ["alcohol-free", "celery-free"],
nutrient: {
CA: "100-200",
FAT: "100" // under 100mg
},
}
axios(qs.stringify(params))
所以我最近开始使用 Axios 创建我的第一个项目。当我尝试从 API 中获取数据时,默认情况下(我认为)axios 给我一个 URL,例如:
/search?health[]=alcohol-free&health[]=celery-free&nutrient[]=calcium&nutrient[]=carbs
但是 API (Edamam API) 需要:
/search?health=alcohol-free&health=celery-free&nutrients%5BCA%5D=100-&nutrients%5BFAT%5D=100
我的参数:
const params = {
...other,
health: ["alcohol-free", "celery-free"],
nutrient: {
CA: "100-200",
FAT: "100" // under 100mg
},
}
我怎样才能纠正我的 URL 这样的。我不知道在哪里修复 axios 中的 URL。谢谢!
在调用 axios
qs
程序包将您的请求字符串化
const qs = require('qs')
const params = {
...other,
health: ["alcohol-free", "celery-free"],
nutrient: {
CA: "100-200",
FAT: "100" // under 100mg
},
}
axios(qs.stringify(params))