【发布时间】:2018-08-20 20:24:18
【问题描述】:
我将 Axios 库用于我的 ajax 请求,因此我创建了一个 axios 实例。
当我点击端点 /user/login 时,成功响应将返回一个令牌,我将在标头中使用该令牌以供将来调用,因为 API 是安全的。
问题是当我执行console.log(authUser) 时,即使在.then() 中,我正在设置authUser.bearerToken,对象也是空的。
为什么会这样?解决方案是什么?谢谢。请参阅下面的代码。
var ax = axios.create({
baseURL: 'http://api.site.test',
timeout: 5000,
headers: {
'X-Api-Client-Secret': 'xxxxxxxxxxxxxxxx'
}
});
var authUser = {};
// log the user in
ax.post('/user/login', {
email: 'e@maiiiiiiiiil.com',
password: 'ThisIsACoolPassword123!'
})
.then(function (response) {
// set the bearer token
authUser.bearerToken = response.data.token;
ax.defaults.headers.common['Authorization'] = authUser.bearerToken;
})
.catch(function (error) {
console.log(error);
});
console.log(authUser);
【问题讨论】:
标签: javascript variables token axios