我有以下问题……
我正在测试一个返回GET请求的HTTP响应的服务.
我的问题是我想查看响应,即使它是HTTP 500/404或任何响应.
我想看看.但我不能,因为它会引发异常,就是这样.
有没有办法查看球衣响应,即使它是错误响应?
我的代码是这样的:
webResource = client.resource(url);
response = webResource.queryParams(alertParams)
.header("x-token", token).get(String.class);
因此,当get收到服务的错误响应时,我将无法查看尽管响应是这样的:
{
“errCode”:“ERR002”,
“errMsg”:“”,
“techErrMsg”:“LoginFailureGeneric”
}
这是一个400 Bad Request.
非常感谢所有的帮助!!
解决方法:
这是您需要花费一些时间使用文档的地方…如果您尝试将响应解析为除ClientResponse之外的其他任何内容,则WebRequest#get(Class)将在您获得HTTP错误状态时抛出异常.
所以你需要做的就是改变.get(String.class) – > .get(ClientResponse.class),您可以从ClientResponse对象中拉出实体本身(以及状态和其他所有内容),但不包括异常.