gpt4 book ai didi

java - 如何在 URL 中添加授权和内容类型

转载 作者:行者123 更新时间:2023-12-01 18:56:01 25 4
gpt4 key购买 nike

我正在尝试对 Fusion Table API 进行 REST 调用。我正在使用 spring 模板进行 REST

当我将 URL 定义为:

String URI = "https://www.googleapis.com/upload/fusiontables/v1/tables/tableid/import";

异常:

 Exception in thread "main" org.springframework.web.client.HttpClientErrorException: 401 Unauthorized

这很好,意味着它正在访问谷歌服务器。

但是当我使用时:

URL  :String URI = "https://www.googleapis.com/upload/fusiontables/v1/tables/tableid/import"+"&Authorization:""&Content-Type: application/octet-stream";

它的抛出执行:

Exception in thread "main" org.springframework.web.client.HttpClientErrorException: 404 Not Found

我无法理解。

最佳答案

您将请求 header 附加到 URL 字符串中,这是不正确的。这两个 header :

  • 授权:“”
  • 内容类型:应用程序/八位字节流

是否应该添加到请求 URL 中。相反,如果您使用 Apache HttpComponents:

final HttpPost post = new HttpPost();
post.addHeader("Authorization", "");
post.addHeader("Content-Type", "application/octet-stream");

或者,使用 HttpUrlConnection:

conn.setRequestProperty("Authorization", "");
conn.setRequestProperty("Content-Type", "application/octet-stream");

或者,使用 Spring RestTemplate:

HttpHeaders headers = new HttpHeaders();
headers.add("Authorization", "");
headers.add("Content-Type", "application/octet-stream");
HttpEntity<String> entity = new HttpEntity<String>(helloWorld, headers);

RestTemplate 的文档页面上有大量有关 Spring 特定选项的信息。和 HttpEntity

关于java - 如何在 URL 中添加授权和内容类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13899278/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com