HTTPGet使用身份验证令牌引发错误代码403

时间:2020-01-28 10:05:58

标签: java apache-httpclient-4.x

我正在尝试从URI中获取带有Auth令牌的响应。

public void executeReponse(){

    URI uri = new URIBuilder()
            .setScheme("http")
            .setHost(<host>)
            .setPath(<path>)
            .setParameter("token", Auth.getAuthToken(URL, UNAME, PWD))
            .build();
    //Auth.getAuthToken() returns my authToken

    HttpGet httpGet = new HttpGet(uri);
    CloseableHttpResponse response = httpclient.execute(httpGet);
    int responseCode = response.getStatusLine().getStatusCode();
    System.out.println("Request Url: " + httpGet.getURI());
    System.out.println("Response Code: " + responseCode);

}

执行此操作后,出现以下错误

Response Code: 403

我已经为令牌提供了URI,但仍未授权。

有人可以帮我吗

1 个答案:

答案 0 :(得分:1)

错误代码403 Forbidden的意思是:服务器知道您是谁,但认为您无权访问您要请求的资源(例如:如果用户A尝试访问用户B的私人Facebook)消息)。

这与401 Unauthorized相反,这意味着:服务器不知道您是谁,而您请求的资源要求您被授权。

确保您要尝试连接的服务具有正确的凭据。如果您还在开发该服务,请检查对该资源的访问权限。

相关问题