1

我正在努力寻找一种在 Jersey 中使用 Junit 框架断言 HTTP 响应代码 302 的方法。

@Test
public void testResponseCodeWithNoIMEI() throws Exception {
    WebResource webResource = resource();
     ClientResponse clientResponse = webResource.path("/catalog").
                                        queryParam(RequestParams.PRODUCTCODE,"1234").
                                        queryParam(RequestParams.ID,"1234").                            
                                        header(HttpHeaders.USER_AGENT,"Mozilla").
                                        header(HttpHeaders.IF_MODIFIED_SINCE,"Aug 2011").get(ClientResponse.class);
     LOG.debug("Server response :"+clientResponse);

这个特定的请求应该返回给我 HTTP 302 +location。它正在返回,但 ClientReqest 正在尝试导航到该 URL。我不确定默认行为,但我想停下来检查一下 HTTP 302 是否足以使测试通过。基本上它是Junit测试之一。

任何想法如何做到这一点。

/莫汉

4

1 回答 1

0

你应该做

  com.sun.jersey.api.client.Client client = Client.create();
  client .setFollowRedirects(false);

它将被添加到您的resource()方法中。

于 2012-09-21T12:26:22.650 回答