2017-12-28 30 views
0

はここに私の角法要求は401

getGiftList(url: string){ 
let q = this.baseUrl + url; 
let headers = new HttpHeaders(); 
let authToken = 'Bearer ' + this.authService.currentUser.token; 

console.log(q); //Log the url ... 
console.log(authToken); Log the token ... 

headers.set('Authorization', authToken) 

return this.http.get(q, { 
    observe: 'response' 
    ,headers: headers 
}) 

}

だ戻って、私はからの要求を行うと、これはAsp.netコア法

[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)] 
public class GiftController : Controller 
{ 
    [HttpGet("api/giftsByGiver/{email}")]   
    public IActionResult getGiftBasicRecordsByGiver(string email, int cpg = 1) 
    { 
     // 
    } 
} 

です私の角度コード、私は401エラーが発生します。しかし、私がPostmanにログして実行したのと同じ値をコピー/ペーストすると、正しい結果が得られます。

何か不足していますか?

+0

郵便配達員に承認ヘッダーがあるかどうかを確認しましたか?彼らは気づきにくいかもしれません。開発のために、私はまだ学んでいるので、ヘッダータブ –

+0

@ PaulDegnanを開く必要があります。私は、どの起源、メソッド、ヘッダーも許可するようにポリシーを設定しました'。 – Richard77

答えて

3

HttpHeadersを支援するための

おかげで不変です。 set()を呼び出しても、それは変更されません。 HttpHeadersの新しいインスタンスを返します。あなたがあなたの命令の順序を変更するのであれば、あなたは、

headers = headers.set('Authorization', authToken); 

それとも単純必要があります。

const authToken = 'Bearer ' + this.authService.currentUser.token; 
const headers = new HttpHeaders().set('Authorization', authToken); 

あなたの仮定を確認する必要がありますちょうどあなたのブラウザのdevのツールのネットワークパネルを開き、そして何かどうかを確認あなたが送っているのはあなたが送っていると思います。

+0

うわー!それは働いた – Richard77

関連する問題