提问人:Kim Andy 提问时间:11/12/2023 最后编辑:Kim Andy 更新时间:11/12/2023 访问量:37
如何使用 axios 在查询字符串中发送数字
How to send a number in query string with axios
问:
我的 react 应用程序调用一个 API 来发布查询字符串。
例如
var param = {
name: 'Alex',
age: 22
}
axios({
baseURL: 'https://aaa.com',
url: '/user/create',
method: 'post',
params: param,
headers: {
Authorization: `Bearer ${_token}`
},
})
这工作正常。但是,age 的值是作为字符串插入的。就像这个“22”。 参数中的所有数字都以字符串形式插入。
我尝试使用“qs”。
axios.defaults.paramsSerializer = params => {
var paramStr = qs.stringify(params)
return paramStr
}
但结果是一样的。
我需要使用其他编码技术来查询字符串吗?
啊,当我在 Swagger 上调用相同的 API 时,它工作正常。
在大摇大摆的情况下,通话看起来像这样。
curl -X 'POST' \
'https://aaa.com:82000/some/create?subtype=time_event&title=%EC%A0%9C%EB%AA%A9&content=%7B%0A%20%20%22intactive%22%3A%20true%2C%0A%20%20%20%22startTimeHour%22%20%3A%2012%2C%0A%20%20%20%22startTimeMinute%22%3A%200%2C%0A%20%20%20%22endTimeHour%22%3A%2019%2C%0A%20%20%20%20%22endTimeMinute%22%3A%200%2C%0A%20%20%22list%22%3A%20%5B%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%22lang%22%20%3A%20%22ko%22%2C%0A%20%20%20%20%20%20%20%20%20%20%20%22title%22%20%3A%20%22%EC%A0%9C%EB%AA%A9%22%2C%0A%20%20%20%20%20%20%20%20%20%20%22content%22%20%3A%20%22ss%22%0A%20%20%20%20%20%20%7D%5D%0A%7D&rewards=%7B%7D&startDate=2023-07-20T13%3A00%3A00Z&endDate=2023-07-20T15%3A45%3A00Z' \
-H 'accept: application/json' \
-H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiJ5c2tpbSIsImdyYWRlIjoiTWFpbiIsImlhdCI6MTY5OTI3MTU4MiwiZXhwIjoxNjk5ODc2MzgyfQ.Od2y--LBhOxHzPu9tJgQ0M3y2X7TWaMtT2Pj66tP_g8' \
-d ''
答:
-1赞
Shubham Sapkal
11/12/2023
#1
您可以使用以下代码使用 axios 有效地将数据发送到服务器:
const { data } = await axios.post(
`${server}/users/login`,
{
// Put your all params here with query
},
{
headers: {
"Content-Type": "application/json",
"Authorization": `Bearer ${_token}`
},
withCredentials: true,
}
).then( (response) => {
console.log(response);
})
.catch( (error) => {
console.log("Axios Error: " + error.message);
});
评论
query strings
When I try to the work "post to the API with query string"