如何在Jersey Junit中拦截http 302响应,然后再将其转发到302位置URL
我绞尽脑汁想找到一种在Jersey中使用Junit框架断言HTTP响应代码302的方法如何在Jersey Junit中拦截http 302响应,然后再将其转发到302位置URL,jersey,junit4,Jersey,Junit4,我绞尽脑汁想找到一种在Jersey中使用Junit框架断言HTTP响应代码302的方法 @Test public void testResponseCodeWithNoIMEI() throws Exception { WebResource webResource = resource(); ClientResponse clientResponse = webResource.path("/catalog").
@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+位置。
它正在返回,但ClientReqest正在尝试导航到该URL。我不确定默认行为,但我想停下来检查HTTP 302是否足以使测试通过。
基本上,它是Junit测试之一
你知道怎么做吗
/默翰你应该这样做
com.sun.jersey.api.client.Client client = Client.create();
client .setFollowRedirects(false);
它将被添加到你的
resource()
方法中。因为你承认有一个默认行为,你可以研究它,并用你发现的更新问题。你可以回答你自己的问题,或者提供足够的信息让别人了解你。不要以为每个人都知道每一个默认值-尽可能多地做一些腿部工作,并把它带到桌面上。。。即使这是随着时间的推移。