axios 请求失败,状态码为 406
Axios request failed with status code 406
我尝试使用 axios 将数据从反应本机多步骤表单提交到使用 api 平台的 symfony 后端。
我使用 axios 来处理这样的请求:
const contactProject = new FormData()
contactProject.append('propertyType', defaultpropretyType)
然后我将带有 axios post 的对象发送到 api,如下所示:
axios
.post(`${API.URL}/contact_projects`, contactProject, {
headers: {
Authorization: `Bearer ${this.props.token}`,
'Content-Type': 'multipart/form-data'
}
})
.then(response => {
console.log('LA REPONSE DE POST CONTACT PROJECT')
console.log(response)
})
.catch(error => {
console.log('ERROR POST CONTACT PROJECT')
console.log(contactProject)
console.log(error)
})
我发送给 api 的表单数据对象是这样的:
FormData {
"_parts": Array [
Array [
"propertyType",
"maison",
],
Array [
"budget",
"0",
],
Array [
"surface",
5,
],
Array [
"nbRooms",
5,
],
Array [
"tradeOperationType",
"/trade_operation_types/1",
],
],
}
这就是我收到 406 错误的原因,我需要一个纯 json 对象来发送,所以我怎样才能将 FormData 转换为 json?
发送即可。
对于您的情况:
const contactProject={
propertyType: defaultpropretyType,
...
}
axios
.post(`${API.URL}/contact_projects`, contactProject, {
headers: {
Authorization: `Bearer ${this.props.token}`,
'Content-Type': 'application/json'
}
})
我尝试使用 axios 将数据从反应本机多步骤表单提交到使用 api 平台的 symfony 后端。
我使用 axios 来处理这样的请求:
const contactProject = new FormData()
contactProject.append('propertyType', defaultpropretyType)
然后我将带有 axios post 的对象发送到 api,如下所示:
axios
.post(`${API.URL}/contact_projects`, contactProject, {
headers: {
Authorization: `Bearer ${this.props.token}`,
'Content-Type': 'multipart/form-data'
}
})
.then(response => {
console.log('LA REPONSE DE POST CONTACT PROJECT')
console.log(response)
})
.catch(error => {
console.log('ERROR POST CONTACT PROJECT')
console.log(contactProject)
console.log(error)
})
我发送给 api 的表单数据对象是这样的:
FormData {
"_parts": Array [
Array [
"propertyType",
"maison",
],
Array [
"budget",
"0",
],
Array [
"surface",
5,
],
Array [
"nbRooms",
5,
],
Array [
"tradeOperationType",
"/trade_operation_types/1",
],
],
}
这就是我收到 406 错误的原因,我需要一个纯 json 对象来发送,所以我怎样才能将 FormData 转换为 json?
发送即可。 对于您的情况:
const contactProject={
propertyType: defaultpropretyType,
...
}
axios
.post(`${API.URL}/contact_projects`, contactProject, {
headers: {
Authorization: `Bearer ${this.props.token}`,
'Content-Type': 'application/json'
}
})