Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 具有请求头的Web客户端_Java_.net_Sockets_Httpclient_Webclient - Fatal编程技术网

Java 具有请求头的Web客户端

Java 具有请求头的Web客户端,java,.net,sockets,httpclient,webclient,Java,.net,Sockets,Httpclient,Webclient,我在.net中的代码如下所示。我想用java编写它。我怎么做?我应该使用httpclient还是socket来执行此操作 using (WebClient wc = new WebClient()) { wc.Encoding = System.Text.Encoding.UTF8; wc.Headers.Add("HOST", "example.com");

我在.net中的代码如下所示。我想用java编写它。我怎么做?我应该使用httpclient还是socket来执行此操作

           using (WebClient wc = new WebClient())
            {
                wc.Encoding = System.Text.Encoding.UTF8;
                wc.Headers.Add("HOST", "example.com");
                wc.Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:16.0) Gecko/20100101 Firefox/16.0"); 
                wc.Headers.Add("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
                wc.Headers.Add("Accept-Language", "tr-TR,tr;q=0.8,en-US;q=0.5,en;q=0.3");
                html = wc.DownloadString(link);
                if (temp == null)
                    return string.Empty;

                return html;
             }

使用默认JDK附带的HttpUrlConnection。不需要下载额外的库。 下面是上述代码在java中的翻译

public static String get(String link){
   HttpURLConnection connection=null;
   try{  
      URL url=new URL(link);
      connection=(HttpURLConnection)url.openConnection();
      connection.setRequestMethod("GET");
      connection.setRequestProperty("HOST", "example.com");
      connection.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:16.0) Gecko/20100101 Firefox/16.0");
      connection.setRequestProperty("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
      connection.setRequestProperty("Accept-Language", "tr-TR,tr;q=0.8,en-US;q=0.5,en;q=0.3");
      connection.setDoInput(true);
      connection.setDoOutput(true);
      BufferedReader in=new BufferedReader(new InputStreamReader(connection.getInputStream(),"UTF-8"));
      String line,response="";
      while((line=in.readLine())!=null)
         response+=(line+"\n");
      in.close();
      return response;
   }catch(Exception e){}
   return "";
}

您会发现HttpClient更易于使用。