如何从空手道呼叫中获取响应HTTP状态?获取响应状态为204,但karate.log(result.response)为空
我正在通过空手道API调用Web服务。当服务被执行时,我将获得预期的HTTP状态204。然而,当我记录响应时,我得到了空白 下面是我的webservice调用、响应和日志输出如何从空手道呼叫中获取响应HTTP状态?获取响应状态为204,但karate.log(result.response)为空,karate,Karate,我正在通过空手道API调用Web服务。当服务被执行时,我将获得预期的HTTP状态204。然而,当我记录响应时,我得到了空白 下面是我的webservice调用、响应和日志输出 result = karate.call('ExecuteWebService.feature', [urlToExecute]); karate.log("Response is " + result.response); #Expecting that code displays HTTP status
result = karate.call('ExecuteWebService.feature', [urlToExecute]);
karate.log("Response is " + result.response); #Expecting that code displays HTTP status here
我知道我得到了正确的回应,因为我的日志显示以下内容
HH.mm.ss.mil [main] DEBUG com.intuit.karate -
1 < 204
1 < Date: Fri, Rest of date portion
1 < X-Application-Context: App Context Data
您能否建议如何从karate.call结果中提取HTTP状态,以便我可以断言响应?204响应代码的意思是: 服务器已成功完成请求,并且没有 要在响应有效负载正文中发送的其他内容 所以,身体里没有任何反应是正常的。
在您的情况下,我将只验证状态代码是否正确(根据应用程序规范)。这应该有效
* def status = result.responseStatus
同样,您还可以访问
响应
,响应时间
,响应负责人
,响应确认
如何从结果中获取状态代码?当前,karate.log()的状态代码显示为空,不再显示其他内容。您还可以访问在调用的功能中定义的所有变量。打印“result”变量以查看从karate返回的所有数据。callYes,我尝试过了。它打印了类似com.intuit.karate的内容。ScriptObjectMap@423c5404. 所以我不确定如何从ObjectMap中获取数据。你的回答是我一直在寻找的
* def status = result.responseStatus