java - UrlConnection.getHeaderField(字符串名称) 返回 null

标签 java http http-headers

解决 URl 连接问题

通过在 URL 上调用 openConnection() 方法来创建连接对象,并处理一般请求。然后我初始化了一个字符串,其中我期望函数 getHeaderfield(string name) 提供一个 uniqueid。之后我需要使用 connect() 方法执行与远程对象的实际连接

   call for openConnection()
   String uniqueid=null;
   call for connect()
   uniqueid=UrlConnection.getHeaderField(Headername);

这里我得到的 uniqueid 值为 null。

当我研究这个主题时,我发现实际的函数 getHeaderField(string) 仅返回 null(在 java.net.UrlConection.class 下的 java 包中的 rt.jar 中找到)。

但是 oracle 文档说 http://docs.oracle.com/javase/1.5.0/docs/api/java/net/URLConnection.html#getHeaderField%28java.lang.String%29 它返回指定 header 的值。任何人都可以解释 getHeaderField() 方法的行为吗?

最佳答案

java.net 中的 UrlConnection 是抽象的,因此您正在使用的 UrlConnection 可能是一个子类(可以是匿名的)。

尝试使用 .getClass() 将 UrlConnection 的类名打印到您实际使用的内容,然后查看该文档。

至于为什么你得到空值,我猜你提供的 headerName 与 header 中的任何内容都不匹配。尝试使用 .getHeaderFields() 获取所有 header 的映射并打印 keySet() 以查看您的 header 是否在其中。

关于java - UrlConnection.getHeaderField(字符串名称) 返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15621944/

相关文章:

java - 改进以更快的方式分解的代码?

git - 通过不带 SSL 的 HTTP 将 Go 模块与私有(private)存储库一起使用

html - Netflix 如何在不刷新页面且不使用 JavaScript 的情况下提交评级?

java - 在 Spring 中添加 Accept header

java - AVRO avdl文件生成

java - 如何关闭 h2 内存数据库?

java - 如何获取设置以及如何使用 adb 命令更改设置

javascript - 接收 Zip 文件作为对 AJAX 请求的响应

asp.net - 我无法解决未处理的异常 : cannot set status after HTTP headers already set

node.js - 访问 meteor 中的入站 HTTP header ?