oAuth認証を持つAPIからデータを取得しようとしています。 私がやっているのは、server1(どこのアプリケーションがどこにあるか)からserver2への認証要求を送信して、アクセストークンを取得することです。次に、トークンをJS変数に入れ、APIエンドポイントにアクセスしようとしています。承認のために角2を送信する
私のjsのコードは次のようになります。
let headers = new Headers({ 'Authorization': "Bearer " + oAuthAccessToken });
let options = new RequestOptions({ headers: headers });
let url = "http://example.com/api/getSomething"
this.http.post(url, body, options)
.subscribe(res => {
console.log(res.json())
});
問題は、私はいつも "401 Unathorized" を取得していますということです。 Chrome Dev Toolsの[ネットワーク]タブでリクエストを調べると、2つの奇妙なことがあります。まず、リクエストメソッドはOPTIONSではなく、ヘッダーの認証がありません。
私は間違っていると思いますか?ヘッダが設定されていないのはなぜですか?
編集:
問題は角度がPOST前にOPTIONSリクエストを送信し、私のアプリのファイアウォールが常に存在するようにAuthorizationヘッダーを期待していたということでした。このヘッダーはOPTIONSリクエストには存在しないため、私はUnauthorizedになりました。 OPTIONSリクエストで適切なヘッダーを送信するようにサーバーアプリケーションを変更しましたが、今はすべて問題ありません。
ありがとうございました。
こんにちは、私はあなたがこの問題を解決するために何をしたか解決策を教えてください。私は同じものを得ている... –