是否可以使用小写的HTTP标头密钥"内容类型"用django休息框架解析器?
HTTP标头不区分大小写,但它似乎不适用于DRF 3.3.2。我的前端(emberjs)通过ember-network(Fetch API)发送带有小写标题名称的请求。
答案 0 :(得分:0)
是的,确实如此。但是ember-network或Fetch API不会返回成功和错误回调。
相反:
fetch(url, {/options/}).then(
(success) => {
//
},
(error) => {
//
});
使用:
fetch(url, {/options/}).then(
(response) => {
if (response.status >= 400) {
//error
} else {
//success
}
}
);
注意response.json() returns a promise
,我的代码是:
function request(url, type, data){
return new Ember.RSVP.Promise((resolve, reject) => {
let headers = {...};
let credentials = 'include';
fetch(url, {
method: type,
body: JSON.stringify(data),
headers: headers,
credentials: credentials
}).then((response) => {
response.json().then(
(json) => {
if (response.status >= 400) {
reject(json);
} else {
resolve(json);
}
})
});
}