学校のプロジェクトでは、簡単なログインページをAngularで作成する必要があります。ログインボタンをクリックすると私の投稿にAuthorizationヘッダーを追加する必要があります。私はバックエンドを作成しました。私は郵便配達員とそのバックエンドに私の認証値を掲示すると、バックエンドに何も問題はありません。フロントエンドで同じバックエンドに投稿しようとすると、機能しません。投稿にヘッダーを追加する最も良い方法は何ですか?意見が分かれているようです。これは私のコードです:私はそのコードを実行すると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のステータス応答を取得し、ヘッダが追加されていません。
[Angular \ [4.3 \] Httpclientがヘッダーを送信しない可能性があります。](https://stackoverflow.com/questions/45286764/angular-4-3-httpclient-doesnt-send-header) –