나는 백엔드 서비스 인증 기반의 토큰을 개발하기 위해이 문서를 따라했습니다 http://bitoftech.net/2014/06/01/token-based-authentication-asp-net-web-api-2-owin-asp-net-identity/각도 4, XHR로드 할 수 없습니다 : POST
등이 모든 작품
예상 나는 윈폼 응용 프로그램을 사용하여 인증 할 수 있습니다 C#에서 restsharp를 사용하여 토큰을 검색하는 데는 아무런 문제가 없습니다. 지금은 각도 (4)를 사용하여 웹 프론트 엔드를 개발하기 위해 왔어요이 수정하려고 :
login(username: string, password: string): Observable<boolean> {
let data = "grant_type=password&username=" + username + "&password=" + password;
let headers = new Headers({ 'Content-Type': 'application/x-www-form-urlencoded' });
//headers.append('Accept', 'application/json');
let options = new RequestOptions({headers: headers});
return this.http.post('http://localhost:61814/token', data, options)
.map((response: Response) => {
// login successful if there's a jwt token in the response
let user = response.json();
if (user && user.token) {
// store user details and jwt token in local storage to keep user logged in between page refreshes
localStorage.setItem('currentUser', JSON.stringify(user));
}
return user;
})
}
http://jasonwatmore.com/post/2016/08/16/angular-2-jwt-authentication-example-tutorial
이 코드를 사용하여 내 백 엔드에서 토큰을 얻기 위해
login() {
this.loading = true;
this.authenticationService.login(this.model.username, this.model.password)
.subscribe(
data => {
this.router.navigate([this.returnUrl]);
},
error => {
this.alertService.error(error);
this.loading = false;
});
}
하지만 Chrome devtools에서 디버깅 할 때 아무런 반응이없고 네트워크 탭에는 아무 것도없고 XHR로드가 실패했습니다 : 콘솔의 "POST".
프런트 엔드 개발에 상당히 익숙하며 정말 고민 중입니다!
그것은 나에게 잘 보인다. console.log를 다양한 메소드에 넣으면 모두 호출되는 것입니까? – Joe
예, 이제 있습니다. 백 엔드 솔루션을 다시 시작했는데 제대로 작동하는 것 같습니다. 투쟁! 감사 – paparoacho