所以我正在尝试将angular2 app
上托管的localhost:4200
连接到localhost:8000
托管的django api,我已经在localhost:800上管理了一个角度为1.6的应用程序登录和所有其他的东西,
所以在我的angular2应用程序中,我收到了存储在我的cookie中的令牌,我正在尝试使用它在标头中向django api发送获取请求。
ps:我已经检查过我的django api,它目前只允许访问所有服务器。
fetchUser(){
console.log("Here");
let headers = new Headers({'Accept': 'application/json','X-CSRFToken': this.token});
this.http.get( 'http://localhost:8000/api/orgs', {headers: headers}).subscribe(
(response: Response) => {
const testResponse = response.json();
this.outerLinks.data = testResponse;
this.data =testResponse;
this.dataChange.next(this.data);
}
);
}
所以我收到了这个error
:
XMLHttpRequest cannot load localhost:8000/api/orgs. Response for preflight is invalid (redirect)
答案 0 :(得分:0)
您可以尝试Allow-Controll-Allow-Origin:* 如果你使用Chrome试试这个分机 https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi?hl=en
答案 1 :(得分:0)
通过添加以下代码修改您的settings.py:
CORS_ORIGIN_ALLOW_ALL = False
CORS_ORIGIN_WHITELIST = (
'localhost:4200'
'<YOUR_DOMAIN>[:PORT]',
)