frisby を使用して認証トークン ログインを必要とするテストを試みていますが、問題は次のとおりです。リクエストの応答が JSON ではなく文字列であり、まだ動作させる方法がわかりません。
グーグルで見つけたいくつかの例を読みましたが、これまでのところ役に立ちませんでした。
これが私のコードです:
var frisby= require('frisby');
frisby.create('Login')
.post('http://mid.dev.psafe.com/My.API/security/Authentication.svc/Login',
{"user":"115303640577606155760"},
{json:true},
{ headers: { 'Content-Type': 'application/json' }})
.expectStatus(200)
.afterJSON(function (token) {
frisby.globalSetup({
request: {
headers: { 'User-Token': token }
}
});
frisby.create('List associated devices')
.post('http://mid.dev.psafe.com/My.API/APIAdmin.svc/GetDevices',
{json:true})
.expectStatus(200)
.toss();
})
.toss();
テストを実行したときに得たものは次のとおりです。
1) Frisby Test: Login
[ POST http://mid.dev.psafe.com/My.API/security/Authentication.svc/Login ]
Message:
Error: Error parsing JSON string: Unexpected token q
Given: qO1DkNvKlCaOmNXsrmvGgfIqeCQEztKJHnizItWyfKaXD9H1bwm1eTIgiINCw5Dz0
Stacktrace:
Error: Error parsing JSON string: Unexpected token q
Given: qO1DkNvKlCaOmNXsrmvGgfIqeCQEztKJHnizItWyfKaXD9H1bwm1eTIgiINCw5Dz0
at _jsonParse (/usr/lib/node_modules/frisby/lib/frisby.js:1219:11)
at Frisby.<anonymous> (/usr/lib/node_modules/frisby/lib/frisby.js:950:20)
at null.<anonymous> (/usr/lib/node_modules/frisby/lib/frisby.js:1112:18)
at Timer.listOnTimeout [as ontimeout] (timers.js:112:15)
Finished in 0.255 seconds
1 test, 2 assertions, 1 failure, 0 skipped
ありがとう!