用什么代替sun.net.www.protocol.http.HttpURLConnection.userAgent?

时间:2012-05-28 10:15:56

标签: java httpurlconnection

我收到此警告

  

[javac] SSLTunnelSocketFactory.java:120:警告:   sun.net.www.protocol.http.HttpURLConnection是Sun专有的API和   可能会在将来的版本中删除   [javac] + sun.net.www.protocol.http.HttpURLConnection.userAgent

代表

  if(NetworkUtils.isIPV6Compatible()&& NetworkUtils.isValidIPV6Address(host)){
     msg = "CONNECT [" + host + "]:" + port + " HTTP/1.0\n"
       + "User-Agent: "
       + sun.net.www.protocol.http.HttpURLConnection.userAgent
       + "\r\n\r\n";
  }

您是否知道我可以使用哪种方式(最好不是外部jar,而是来自已安装的JVM)?

1 个答案:

答案 0 :(得分:2)

默认情况下,该变量定义如下:

String javaVersion = "Java/" + System.getProperty("java.version");
String userAgent = System.getProperty("http.agent") == null ? javaVersion : System.getProperty("http.agent") + " " + javaVersion;

所以你可以用这个或用你的应用程序的名称或你喜欢的任何其他字符串替换该变量(因为结果字符串不是常见浏览器的User-Agent,我假设没有JavaScript或任何其他代码将检查它。