所以我一直收到这个错误:
在我的其他Angular项目中,我在任何POST或GET请求之前向服务器发送了一个预检请求,我注意到它在这种情况下丢失了,服务器正在对请求做出正确的响应,但是由于错误我无法访问它被抛出,我无法访问数据。
我的服务有下一个实现:
login(user) {
const headers = new Headers();
headers.append('Content-Type', 'application/x-www-form-urlencoded');
const body = new URLSearchParams();
body.set('grant_type', 'password');
body.set('username', user.username);
body.set('password', user.password);
return this._http.post('http://thevotechain.azurewebsites.net/Token', body, { headers: headers })
.map((response: Response) => {
return response.json();
});
}
帮助。
答案 0 :(得分:1)
在您的API中设置带密钥的响应标头:
Access-Control-Allow-Origin
例如,到localhost:4200
。
当您将其设置为localhost:4200
时,您说该前端应用程序可以访问我。
您也可以将其设置为*
,这样任何前端应用都可以使用您的API。