【发布时间】:2018-04-03 19:05:30
【问题描述】:
我在我的 PHP 服务器上有一个有效的后端 JWT 设置,我终于在几个小时后得到了登录控制台的结果,我现在想不通的是如何管理这个结果并等待信息加载返回结果,如果我删除我的订阅功能,我什至无法呈现结果,这让我感到困惑,为什么我不能简单地使用地图?
这里是我的登录功能:
login(username: string, password: string): Observable<boolean> {
let result = false;
var postData = "email=" + username + "&password=" + password;
let headers: Headers;
headers = new Headers();
headers.append('Content-Type', 'application/x-www-form-urlencoded');
this.http.post('https://callum.tech/jwt/', postData, {headers: headers})
.take(1)
.map((res:any) => res.json())
.subscribe(
data => {
console.log(data.token)
if (data.token) {
console.log("token exists");
// set token property
this.token = data.token;
// store username and jwt token in local storage to keep user logged in between page refreshes
localStorage.setItem('currentUser', JSON.stringify({ username: username, token: data.token }));
result = true;
}
},
err => {console.log(err)}
//,() => console.log("done!?")
);
console.log(result);
return Observable.of(result);
}
现在这将使用正确的信息登录(我在 'token' 下的 PHP 中返回一个 json 并且没有问题,这显示在控制台中)
我不知道如何等待并得到正确的响应,POST 的东西似乎对订阅等非常敏感,或者它不会发布数据,所以我不知道如何处理这个
【问题讨论】:
标签: php angular authentication jwt