java – 泽西没有显示响应,以防它出错

我有以下问题……

我正在测试一个返回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对象中拉出实体本身(以及状态和其他所有内容),但不包括异常.

上一篇:java.lang.noclassdeffounderror:org / glassfish / hk2 / api / servicelocatorfactory $createpolicy


下一篇:java – 基本身份验证失败,使用glassfish