我正在发送注册请求,并收到此错误:
{"errors":[{"detail":"Unsupported media type \"application/json;charset=UTF-8\" in request.","source":{"pointer":"/data"},"status":"415"}]}
这就是我在 vue.js 中发送数据的方式:
import {instanceAxios} from '@/services/interceptor';
const registration = async ({commit}, data) => {
try {
let resp = await instanceAxios.post('/account/register/', data);
const token = resp.data.token;
localStorage.setItem('token', token);
instanceAxios.defaults.headers.common['Authorization'] = `Token ${token}`;
commit('AUTH_SUCCESS', resp.data);
return resp;
} catch (e) {
localStorage.removeItem('token');
throw e;
}
};
我收到此错误。
这是我的请求在浏览器中的样子:
非常有趣的事情是内容类型是应用程序 我也可以给你后端注册方法的代码 https://pastebin.com/74zXjejV
PS:我不知道为什么,但我得到内容类型 application/d.json - 这很奇怪
最佳答案
415 错误意味着您的负载无效 see here .
如果您要发送 json,请尝试此操作
instanceAxios({
method: 'post',
url: '/account/register/',
headers: {'Content-Type': 'application/json'}
});
而不是
instanceAxios.post('/account/register/', data);
并检查您的 body 是否有效
关于django - 服务器响应状态为 415(不支持的媒体类型) - vue.js 和 python django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54093140/