对于一个学校项目,我需要使用 Angular 制作一个简单的登录页面。单击登录按钮时,我需要在我的帖子中添加一个授权标题。我创建了一个后端,当我使用邮递员将我的授权值发布到该后端时,它可以正常工作,因此后端没有任何问题。当我尝试使用我的前端发布到同一个后端时,它不起作用。在帖子中添加标题的最佳方法是什么?看来意见分歧了。这是我的代码:
export class LoginComponent{
title = 'Login';
email = '';
password = '';
credentials = '';
basic = '';
constructor(private http:HttpClient){
}
createAuthorizationHeader(headers:Headers,basic){
headers.append('Authorization',basic);
}
login(event){
this.email = (<HTMLInputElement>document.getElementById("email")).value;
this.password = (<HTMLInputElement>document.getElementById("password")).value;
this.credentials = this.email + ":" + this.password;
this.basic = "Basic " + btoa(this.credentials);
console.log(this.basic);
let headers = new Headers();
headers.append('Content-Type','application/json');
headers.append('Authorization',this.basic);
let options = new RequestOptions({headers:headers});
console.log(headers);
return this.http.post('http://localhost:8000/api/v1/authenticate',options)
.subscribe(
res =>{
console.log(res);
},
err => {
console.log(err.message);
}
)
}
}
当我运行该代码时,我得到一个 400 状态响应并且没有添加标题。