javascript - 使用 Mocha 从控制台日志中检索 access_token
问题描述
我可以使用 console.log(res) 获取整个响应日志,但无法从中检索 access_token。包含 access_token 的响应如下所示:
accept: [Array],
'content-length': [Array]
}
},
text: '{"access_token":"eyJhbGciOiJS....
我尝试了以下方法:
.end( function (res, err, access_token, refresh_token) {
if (err) console.error(err);
else {
console.log(res)
expect(res).to.have.status(200);
//console.log(res.body)
const token = JSON.stringify.access_token;
// token = res.access_token;
console.log(token)
// let accessToken = await auth.getAccessToken();
// console.log(accessToken);
// assert(accessToken != null, 'token is null');
//var token = body.access_token
//console.log(token + "see on token");
// console.log(`options.access_token: ${options.access_token}`);
更新:通过使用下面的代码,解析和使用 stringify 我可以注销令牌,但我仍然无法使用下一个请求中的解析作为标头,变得未定义
chai.request(uaaUrl)
.post('/oauth/token')
.set('Content-Type', 'application/x-www-form-urlencoded')
.set('Accept', '*/*',)
.send(Authuser)
.end(function(err, res, body) {
const eurotoken = JSON.parse(JSON.stringify(res.body.access_token));
console.log('parsedd token', eurotoken);
expect(res).to.have.status(200)
done();
})
it('./health', (done) => {
let eurotoken;
chai.request(euro_url)
.get('/request-statuses')
.set('Content-Type', 'application/x-www-form-urlencoded')
.set('Accept', '*/*',)
.set('Authorization', `Bearer ${eurotoken}` )
.end( function (res, err, body) {
if (err) console.error(err);
else {
expect(res).to.have.status(200)
done();
}
done();
})
});
解决方案
推荐阅读
- javascript - 如何在使用绑定将数据传递给侦听器时删除事件侦听器?
- php - 我的搜索框无法识别 0 之类的字符 PHP
- swift - 如何快速对具有特定名称的多维数组进行排序?
- c# - ViewModel 构造函数如何获取所需的接口?
- activemq-artemis - 在 ActiveMQ Artemis 中,从队列中重新传递是无序的
- css - 如何为 ng-select 创建自定义样式
- jms - 为单个请求禁用 Istio/Zipkin 拦截器?
- javascript - 如何获取哪个路由称为组件
- f# - 将选项 val 更改为(val | DefaultType 的特殊类型)
- typo3 - 在打字稿设置中使用带有空格的SplitProcessor作为分隔符?