Javascript 得到;SyntaxError:JSON中位于位置0的意外标记e;使用supertest获取令牌时的消息
我使用supertest测试web API,并创建了一个函数来获取令牌Javascript 得到;SyntaxError:JSON中位于位置0的意外标记e;使用supertest获取令牌时的消息,javascript,supertest,Javascript,Supertest,我使用supertest测试web API,并创建了一个函数来获取令牌 module.exports.getToken = () => { let query = { "email": config.dev.adminUsername, "password": config.dev.adminPassword, "applicationId": config.dev.applicationId
module.exports.getToken = () => {
let query =
{
"email": config.dev.adminUsername,
"password": config.dev.adminPassword,
"applicationId": config.dev.applicationId
}
request(config.dev.loginUrl)
.post('/login')
.send(query)
.expect(200)
.then(res => {
console.log(res);
})
.catch(err => {
console.log(err);
});
}
但我得到的错误看起来像
{ SyntaxError: Unexpected token e in JSON at position 0
at JSON.parse (<anonymous>)
at IncomingMessage.res.on (C:\WorkSpace\Postman\saasify-integration-tests\supertest_testScripts\node_modules\superagent\lib\node\parsers\json.js:11:35)
at emitNone (events.js:111:20)
at IncomingMessage.emit (events.js:208:7)
at endReadableNT (_stream_readable.js:1064:12)
at _combinedTickCallback (internal/process/next_tick.js:139:11)
at process._tickCallback (internal/process/next_tick.js:181:9)
rawResponse: 'eyJraWQiOiJ4eGh5cXV3.................FRfeCpAm3sYxY7fV-WDK1w',
statusCode: 200,
response: undefined }
{SyntaxError:JSON中位于位置0的意外标记e
在JSON.parse()处
位于IncomingMessage.res.on(C:\WorkSpace\Postman\saasify integration tests\supertest\u testScripts\node\u modules\superagent\lib\node\parsers\json.js:11:35)
在emitNone(events.js:111:20)
在IncomingMessage.emit(events.js:208:7)
在endReadableNT(_stream_readable.js:1064:12)
at _combinedTickCallback(内部/流程/下一步_tick.js:139:11)
在进程中。_tick回调(内部/process/next_tick.js:181:9)
rawResponse:“eyJraWQiOiJ4eGh5cXV3………..FRfeCpAm3sYxY7fV-WDK1w”,
状态代码:200,
响应:未定义}
但是在postman I中相同的请求和url可以无误地获得令牌字符串。我做错了什么?是
send()
期望JSON
还是JavaScript普通对象?rawResponse:'eyJraWQiOiJ4eGh5cXV3………...FRfeCpAm3sYxY7fV-WDK1w'
-这不是jsonies响应不是JSON,在postman中我刚刚设置了响应是text,我也不明白为什么在错误消息中包含rawResponse