尝试从aurelia js文件调用django api时出现禁止的错误
我已经在django项目中集成了aurelia js,从aurelia我尝试使用django api,但CSRF问题即将出现,我无法获得结果 如果我在django中创建普通的js文件,并从那里调用django api,那么它可以工作,但如果是aurelia,它就不能工作。 我的代码是:尝试从aurelia js文件调用django api时出现禁止的错误,django,aurelia,Django,Aurelia,我已经在django项目中集成了aurelia js,从aurelia我尝试使用django api,但CSRF问题即将出现,我无法获得结果 如果我在django中创建普通的js文件,并从那里调用django api,那么它可以工作,但如果是aurelia,它就不能工作。 我的代码是: import {inject,DOM, autoinject} from 'aurelia-framework'; import {HttpClient, json} from 'aurelia-fetch-cl
import {inject,DOM, autoinject} from 'aurelia-framework';
import {HttpClient, json} from 'aurelia-fetch-client';
let httpClient = new HttpClient();
let tableHeading;
export class App {
attached(){
httpClient.fetch('/demographs/', {
method: "POST",
headers: {
"X-CSRF-Token": this.getCookie("csrftoken"),
"Accept": "application/json",
'Cache': 'no-cache',
"Content-Type": "application/json",
'Cookie': 'csrftoken='+this.getCookie("csrftoken")
},
credentials: 'include'
})
.then(response => response.json())
.then(data => {
if(data && data.table && data.table.length) {
tableHeading = data.table[0];
}
});
}
getCookie(name) {
let cookieValue = null;
if (document.cookie && document.cookie != '') {
let cookies = document.cookie.split(';');
for (let i = 0; i < cookies.length; i++) {
let cookie = cookies[i].trim();
if (cookie.substring(0, name.length + 1) == (name + '=')) {
cookieValue = decodeURIComponent(cookie.substring(name.length +1));
break;
}
}
}
return cookieValue;
}
}
从'aurelia framework'导入{inject,DOM,autoinject};
从'aurelia fetch client'导入{HttpClient,json};
让httpClient=newHttpClient();
让我们来看看标题;
导出类应用程序{
附({
httpClient.fetch(“/demographs/”{
方法:“张贴”,
标题:{
“X-CSRF-Token”:这个.getCookie(“csrftoken”),
“接受”:“应用程序/json”,
'缓存':'无缓存',
“内容类型”:“应用程序/json”,
“Cookie”:“csrftoken=”+this.getCookie(“csrftoken”)
},
凭据:“包括”
})
.then(response=>response.json())
。然后(数据=>{
if(data&&data.table&&data.table.length){
tableHeading=data.table[0];
}
});
}
getCookie(名称){
让cookieValue=null;
if(document.cookie&&document.cookie!=''){
让cookies=document.cookie.split(“;”);
for(设i=0;i