java - HttpResponseProxy HTTP/1.0 401 未经授权

标签 java web-services rest authorization

我有一个 GET 请求,该请求在 Postman 上运行良好,但在 Eclipse 上运行不佳。每次我收到这样的回复:

HttpResponseProxy{HTTP/1.0 401 Unauthorized [Cache-Control: no-cache, Pragma: no-cache, Content-Type: application/json; charset=utf-8, Expires: -1, Server: , WWW-Authenticate: Raven, Date: Fri, 18 Mar 2016 09:47:13 GMT, Content-Length: 32, X-Cache: MISS from proxy, X-Cache-Lookup: MISS from proxy:3191, X-Cache: MISS from site.domain.com, X-Cache-Lookup: MISS from site.domain.com:8668, Via: 1.0 proxy:3191 (squid/2.6.STABLE21), 1.0 site.domain.com (squid/3.1.10), Connection: keep-alive]}

这就是我打电话的方式:

    //String request; String key;

    String signature = generateSignature(request, "HmacSHA256");

    Resource resource = restClient.newBuilder()
            .type(TypeFactory.defaultInstance()
            .constructCollectionType(List.class, MyObject.class))
            .timeout(30000)
            .header("Authorization", "Raven " + signature)
            .header("X-Raven-ApiKey", key)
            .header("Content-Type", "application/json")
            .param("SinceDate", sinceDate)
            .param("Timestamp", String.valueOf(timestamp))
            .build();
    return resource.get();

出现此错误的可能原因是什么?

谢谢!

最佳答案

@cdelmas 你是对的。我使用 Base64 对签名进行编码,最后添加了“\r\n”字符。我删除了它们并且它有效。

关于java - HttpResponseProxy HTTP/1.0 401 未经授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36081279/

相关文章:

java - spring systemProperties key-IllegalArgumentException : KEY must not be null

java - 如何在 Java 中有效地管理文件系统上的文件?

java - 使用 ANGULARJS 从 Jersey Rest api 调用下载/保存文件。文件附有响应 "Content-Disposition"

java - 将 xml 转换为 java

java - 限制 jConnector 中的 MySQL 批处理大小

java - Java 中重复字符串值的字符串连接

javascript - 当尝试在 koajs 上使用 swig 渲染模板时,浏览器中的 "not found"纯文本

java - java多线程Web服务中同步和维护操作顺序

c# - 使用 Outlook Rest api 更新事件失败,并显示方法不允许

ruby-on-rails - rest_client gem 已弃用,将从 RubyGems 中删除。请改用 rest-client gem