HttpURLConnection的Java GET请求未按预期工作

时间:2017-10-07 04:51:46

标签: java http url http-proxy get-request

我使用核心java使用代理检索单个网页内容为String。

var finished = false;

while (!finished) {
  var color1 = prompt('Pick a color');

  switch (color1) {
    case null:
    case '':
      alert('Thanks');
      finished = true;
      break;
    case 'green':
      document.write("<p>yes</p>");
      break;
    default:
      document.write("<p>nope</p>");
      break;
  }
}

注意: private static HttpURLConnection getConnection(String urlStr) throws MalformedURLException, IOException { URL url = new URL(urlStr); Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("216.56.48.118", 9000)); HttpURLConnection uc = (HttpURLConnection) url.openConnection(proxy); return uc; } public static void printHomePageContent() throws Exception { String queryParam = URLEncoder.encode( "YBuD64pgMuP3hiqNmR4hB6H8xdAebeBPfdEPbdNUq3ptkbhSYGkdhuKaPCXE+KXT3unjfaI3tRJzQno10f/FiC7IzNAdhbrPK9d4smyxHpE=", "UTF-8"); HttpURLConnection conn = getConnection( "https://www.example.com?params=" + queryParam); conn.setRequestMethod("GET"); conn.setReadTimeout(60 * 1000); conn.setRequestProperty("Accept-Charset", "UTF-8"); conn.connect(); Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8")); for (int c; (c = in.read()) >= 0;) { System.out.print((char) c); } } 已替换为实际网址,因为我无法在公共场所分享,所有其他内容与我的原始代码完全相同。

问题:当我调用www.example.com时,它打印错误的页面(如果我不发送查询参数,则是同一页面)内容,这意味着它不考虑printHomePageContent查询参数值正如所料。如果我在浏览器或POSTMAN(Rest Client)上点击相同的URL,则显示右页。 params

我知道你不能复制你自己的问题,因为我已经替换了URL,但我写的描述正是发生了什么。如果有人根据他们过去的经验提出一些提示会有所帮助。

提前致谢。

0 个答案:

没有答案