所以我試圖使用JSON網絡令牌進行身份驗證,並試圖弄清楚如何將它們附加到標頭併發送請求。如何將json Web令牌添加到每個標頭?
我試圖使用https://github.com/auth0/angular2-jwt,但我無法讓它與Angular一起工作並放棄了,並且我想我可以弄清楚如何在每個請求中發送JWT或將它發送到頭部(最好是頭部) 。這比我想象的要難一些。
這裏是我的登錄
submitLogin(username, password){
console.log(username);
console.log(password);
let body = {username, password};
this._loginService.authenticate(body).subscribe(
response => {
console.log(response);
localStorage.setItem('jwt', response);
this.router.navigate(['UserList']);
}
);
}
和我login.service
authenticate(form_body){
return this.http.post('/login', JSON.stringify(form_body), {headers: headers})
.map((response => response.json()));
}
我知道這些都不是真正需要的,但也許它會幫助!一旦這個令牌被創建並且我存儲它,我想做兩件事,把它發送到頭文件中,並提取我放入的到期日期。
一些Node.js的一個登錄碼
var jwt = require('jsonwebtoken');
function createToken(user) {
return jwt.sign(user, "SUPER-SECRET", { expiresIn: 60*5 });
}
現在我只是想通過一個角度的服務回報節點與此服務傳遞給它。
getUsers(jwt){
headers.append('Authorization', jwt);
return this.http.get('/api/users/', {headers: headers})
.map((response => response.json().data));
}
智威湯遜是我在本地存儲的webtoken,通過我的組件傳遞給服務。
我在任何地方都沒有錯誤,但是當它到達我的節點服務器時,我從來沒有收到它的頭文件。
'content-type': 'application/json',
accept: '*/*',
referer: 'http://localhost:3000/',
'accept-encoding': 'gzip, deflate, sdch',
'accept-language': 'en-US,en;q=0.8',
cookie: 'connect.sid=s%3Alh2I8i7DIugrasdfatcPEEybzK8ZJla92IUvt.aTUQ9U17MBLLfZlEET9E1gXySRQYvjOE157DZuAC15I',
'if-none-match': 'W/"38b-jS9aafagadfasdhnN17vamSnTYDT6TvQ"' }
yes..angular2,智威湯遜從auth0寫得不好......不能讓工作太 – Tampa