Authorization ヘッダーを必要とする API からデータを取得しようとしています。Postman と Node では問題なく動作しますが、Angular で使用しようとすると 401 が返されます。誰かが私のリクエストでエラーを見つけることができますか? 長い時間をかけて試しましたが、解決策が見つかりませんでした。
これは私のdata.service.ts
import { Injectable } from '@angular/core';
import { HttpHeaders } from '@angular/common/http';
import { HttpClient } from '@angular/common/http';
@Injectable()
export class DataService{
constructor(private authHttp: HttpClient) {}
getData()
{
return this.authHttp.get('<<API URL>>', {
headers:
new HttpHeaders()
.append('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,PATCH,OPTIONS')
.append('Access-Control-Allow-Origin', 'http://localhost:4200')
.append('Access-Control-Allow-Headers', "Access-Control-Allow-Headers, Access-Control-Allow-Origin, Access-Control-Request-Method")
.append('Authorization', "<<my token>>")
, responseType:'text'})
.subscribe(data => data);
}
}
これは、そのデータを取得するためにサービスに対して行っている呼び出しですが、subscribe メソッドがエラーを返しています。
プロパティ 'subscribe' はタイプ 'Subscription' に存在しません。「登録解除」ということですか?
これは私のdata.component.tsです(簡潔にするためにいくつかの行をカットします)
constructor(private dt: DataService) { }
this.dt.getData().subscribe(result => {
if (result){
console.log(result);
}
else {
console.log('no result');
}
});
感謝!