Я отправляю токен доступа с клиента на сервер, используя XMLHttpRequest
let xhr = new XMLHttpRequest();
xhr.open('POST', 'http://localhost:3000/' + url);
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.setRequestHeader('token', this.sessionInfo.token);
и проверяя токен на стороне сервера как
router.route('/auth/linkedin')
.post(function verifyLinkedinAccessToken(req, res, Ltoken) {
var Ltoken = req.headers ['token'];
// Authorization: Bearer [Ltoken];
console.log('LinkedIn token from client ==== ', Ltoken);
var path = 'https://api.linkedin.com/v1/people/~?oauth2_access_token=' + Ltoken;
request(path, function (error, response, body) {
var data = JSON.stringify(body);
console.log(data);
if (!error && response && response.statusCode && response.statusCode == 200) {
var user = {
linkedinUserId: data.id,
fullName: data.name
};
var jtoken = jwt.sign({ linkedinUserId: data.id }, 'twinesoft', { expiresIn: '3h' });
res.json(jtoken);
}
else {
console.log(data.error);
}
});
После этого мы получаем 401 сследующее содержание:
{
"errorCode": 0,
"message": "Unable to verify access token",
"requestId": "C0DUCX81SA",
"status": 401,
"timestamp": 1421946470523
}