如何让restlet遵循301重定向

时间:2014-02-01 11:57:20

标签: java google-app-engine restlet http-redirect

我目前正在尝试获取一个可能落后于多个重定向的资源。我的代码如下所示:

        Client client = new Client(new Context(), Protocol.HTTP);
        Context ctx = client.getContext();
        ctx.getParameters().add("followRedirects", "true");      
        ClientResource cr = new ClientResource(ctx,u); 
        Representation r = cr.get();

但是没有遵循重定向。我做错了什么?

这是Google App Engine上的Restlet 2.1

2 个答案:

答案 0 :(得分:1)

Series<Parameter> params = ctx.getParameters();
params.add("followRedirects", "true");
ctx.setParameters(params);

答案 1 :(得分:0)

您也可以使用ClientResource类设置此项:

clientResource.setFollowingRedirects(true);

在我的情况下(使用Restlet 2.3.9),这似乎是默认行为。

此方法在您的情况下也很有用:

setMaxRedirects(int maxRedirects) 
  

设置单个呼叫可自动遵循的最大重定向数。