httpHead和httpClient给503

时间:2016-05-18 04:51:17

标签: java httpclient

我遇到了一个问题,我正在触发一个http请求来获取这样的标题。我的目的是检查当我发出请求时,我会收到回复。

    try {
        HttpHead headReq = new HttpHead(imageUrl);
        response = (CloseableHttpResponse) httpClient.execute(headReq);
        StatusLine sl = response.getStatusLine();
        if (sl.getStatusCode() == 200) {
            //do something
        }

    } catch (Exception e) {
        LOG.error(e.getMessage());
    } finally {
        try {
            response.close();
        } catch (Exception e) {
            LOG.error(e.getMessage());
        }
    }

我一直在获得HTTP / 1.0 503服务不可用,即使我在浏览器中点击它时知道URL存在。我必须在这里做错事。任何人都可以帮我看看。

感谢

1 个答案:

答案 0 :(得分:1)

也许他们会检查用户代理,尝试伪造它:

setRequestProperty("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36");

但它绝对是服务器端,你应该问你的团队,可能缺少一些参数。