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

Han*_*bal 3 java jersey jersey-client

我有以下问题......

我正在测试一个返回GET请求的HTTP响应的服务.

我的问题是我想查看响应,即使它是HTTP 500/404或任何响应.

我想看看.但我不能,因为它会引发异常,就是这样.

有没有办法查看球衣响应,即使它是错误响应?

我的代码是这样的:

webResource = client.resource(url);

response = webResource.queryParams(alertParams)
        .header("x-token", token).get(String.class);
Run Code Online (Sandbox Code Playgroud)

因此,当get收到服务的错误响应时,我将无法查看尽管响应是这样的:

{"errCode":"ERR002","errMsg":"","techErrMsg":"LoginFailureGeneric"}

这是一个400 Bad Request.

非常感谢所有的帮助!!

Cha*_*lie 7

这是您需要花费一些时间在文档上的地方... 如果您尝试将响应解析为除ClientResponse之外的其他任何内容,则WebRequest#get(Class)将在您获得HTTP错误状态时抛出异常.

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