2017-05-24 55 views
1

我有一個Angular 4應用程序調用一個API與NTLM身份驗證。它返回2 401和200的響應,但是,Angular中的訂閱響應返回的響應沒有定義,因爲它似乎得到了前401個。在Fiddler中,我可以在200響應中看到我需要的所有內容,但它之前是兩個401的。我如何獲得200響應數據?如何獲得成功的API響應NTLM授權?

Service.ts

getCurrentUser(): Observable<any> { 
    let options = new RequestOptions({ withCredentials: true }); 
    return this.http.get(urlBase, options) 
     .map((response: any) => { return response.json() }); 
} 

Component.ts

getUser() { 
    let result: any; 
    this._userService.getCurrentUser() 
     .subscribe(
     data => result = data 
     ); 
    console.log(result); 
} 

的Fiddler: Fiddler response

回答

1

原來我是缺少圍繞this.result =數據括號;它現在有效。

getUser() { 
    this._userService.getCurrentUser() 
     .subscribe(
      data => { 
       this.result = data; 
       console.log(this.result); 
      }); 
};