【问题标题】:JSONError | No data, empty input at 1:1JSON错误 |无数据,空输入 1:1
【发布时间】:2020-02-21 04:23:19
【问题描述】:

我试图在控制台中打印响应代码,但我总是得到响应为“JSONError | No data, empty input at 1:1”

当响应代码为 204 时,我收到此错误。否则条件可以正常工作。

脚本没有进入条件。

请查看代码并提供解决方案。谢谢。

var respcode=pm.response.code;
var stagresbody=pm.response.json(responseBody);

if (respcode === 204) { 
    pm.test("engine is suspended with resposne code"+respcode,function(){ 
        console.log(respcode); 
    }) 
}
else { pm.test("Staging is resumed with message"+stagresbody.serviceStatus,function(){
    console.log("Staging is resumed with message "+stagresbody.serviceStatus);
    }); 
}

【问题讨论】:

  • var respcode=pm.response.code; var stagresbody=pm.response.json(responseBody); if (respcode === 204) { pm.test("引擎因响应代码暂停"+respcode,function(){ console.log(respcode); }) } else { pm.test("暂存恢复并显示消息"+stagresbody.serviceStatus,function(){ console.log("暂存恢复消息 "+stagresbody.serviceStatus); }); }
  • 你应该只需要使用pm.response.json()而不添加responseBody
  • 如果您将您的评论添加到原始问题并格式化代码会更好。
  • 欢迎来到 Stack Overflow _ 我已将您在评论中编写的代码放入问题中的代码块中。请检查代码块以确保注释代码中没有遗漏任何内容
  • @inputforcolor thx for that.. 从下一次开始我会在问题中添加它。

标签: rest api postman


【解决方案1】:

可以使用它来做同样的事情:

if (pm.response.code === 204) { 
    pm.test(`Engine is suspended with resposne code ${pm.response.code}`, () => { 
        console.log(pm.response.code); 
    }) 
}
else { 
    pm.test(`Staging is resumed with message ${pm.response.json().stagresbody.serviceStatus}`, () => {
        console.log(`Staging is resumed with message ${pm.response.json().stagresbody.serviceStatus}`);
    }); 
}

【讨论】:

  • 如果对您有帮助,请不要忘记投票或接受答案。 ?
猜你喜欢
  • 2022-01-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-21
  • 2021-01-24
  • 1970-01-01
  • 2019-04-14
相关资源
最近更新 更多