如果出现错误,泽西岛没有显示回应

时间:2011-06-28 13:06:11

标签: java jersey jersey-client

我有以下问题...

我正在测试一个在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。

非常感谢所有帮助!!

1 个答案:

答案 0 :(得分:7)

这是您需要花费一些时间处理文档的地方...如果您尝试将响应解析为{{3}以外的任何其他内容,则会在您收到HTTP错误状态时抛出异常... WebRequest#get(Class) }。

所以你需要做的就是改变.get(String.class) - > .get(ClientResponse.class)并且您可以从ClientResponse对象中拉出实体本身(以及状态和其他所有内容),而不是异常。