搜索
首页Javajava教程org.apache.httpcomponents:httpclient 工具类
org.apache.httpcomponents:httpclient 工具类Jun 19, 2017 am 10:19 AM
httpclientie工具

基于httpclient 版本4.4.1

因为http连接需要三次握手,在需要频繁调用时浪费资源和时间

故采用连接池的方式连接

  根据实际需要更改  连接池最大连接数、路由最大连接数

  另一个需要注意的是

 

   // 释放Socket流
     response.close();
     // 释放Connection
     // httpClient.close();<br><br>
<span style="color: #008080">  1</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.HttpEntity;
</span><span style="color: #008080">  2</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.NameValuePair;
</span><span style="color: #008080">  3</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.client.config.RequestConfig;
</span><span style="color: #008080">  4</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.client.entity.UrlEncodedFormEntity;
</span><span style="color: #008080">  5</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.client.methods.CloseableHttpResponse;
</span><span style="color: #008080">  6</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.client.methods.HttpGet;
</span><span style="color: #008080">  7</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.client.methods.HttpPost;
</span><span style="color: #008080">  8</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.client.methods.HttpRequestBase;
</span><span style="color: #008080">  9</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.client.utils.URIBuilder;
</span><span style="color: #008080"> 10</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.config.SocketConfig;
</span><span style="color: #008080"> 11</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.entity.StringEntity;
</span><span style="color: #008080"> 12</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.impl.client.CloseableHttpClient;
</span><span style="color: #008080"> 13</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.impl.client.HttpClients;
</span><span style="color: #008080"> 14</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
</span><span style="color: #008080"> 15</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.message.BasicNameValuePair;
</span><span style="color: #008080"> 16</span> <span style="color: #0000ff">import</span><span style="color: #000000"> org.apache.http.util.EntityUtils;
</span><span style="color: #008080"> 17</span> 
<span style="color: #008080"> 18</span> <span style="color: #0000ff">import</span><span style="color: #000000"> java.io.IOException;
</span><span style="color: #008080"> 19</span> <span style="color: #0000ff">import</span><span style="color: #000000"> java.io.UnsupportedEncodingException;
</span><span style="color: #008080"> 20</span> <span style="color: #0000ff">import</span><span style="color: #000000"> java.net.URISyntaxException;
</span><span style="color: #008080"> 21</span> <span style="color: #0000ff">import</span><span style="color: #000000"> java.util.ArrayList;
</span><span style="color: #008080"> 22</span> <span style="color: #0000ff">import</span><span style="color: #000000"> java.util.Map;
</span><span style="color: #008080"> 23</span> 
<span style="color: #008080"> 24</span> <span style="color: #008000">/**</span>
<span style="color: #008080"> 25</span> <span style="color: #008000"> * Created by lidada on 2017/6/9.
</span><span style="color: #008080"> 26</span>  <span style="color: #008000">*/</span>
<span style="color: #008080"> 27</span> <span style="color: #0000ff">public</span> <span style="color: #0000ff">class</span><span style="color: #000000"> HttpClientUtils {
</span><span style="color: #008080"> 28</span>     <span style="color: #0000ff">private</span> <span style="color: #0000ff">static</span><span style="color: #000000"> PoolingHttpClientConnectionManager cm;
</span><span style="color: #008080"> 29</span>     <span style="color: #0000ff">private</span> <span style="color: #0000ff">static</span> String EMPTY_STR = ""<span style="color: #000000">;
</span><span style="color: #008080"> 30</span>     <span style="color: #0000ff">private</span> <span style="color: #0000ff">static</span> String CONTENT_TYPE_UTF_8 = "UTF-8"<span style="color: #000000">;
</span><span style="color: #008080"> 31</span>     <span style="color: #0000ff">private</span> <span style="color: #0000ff">static</span> String CONTENT_TYPE_GBK = "GBK"<span style="color: #000000">;
</span><span style="color: #008080"> 32</span>     <span style="color: #0000ff">private</span> <span style="color: #0000ff">static</span> String CONTENT_TYPE_JSON = "application/json"<span style="color: #000000">;
</span><span style="color: #008080"> 33</span>     <span style="color: #0000ff">private</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">final</span> <span style="color: #0000ff">int</span> CONNECTION_TIMEOUT_MS = 60000<span style="color: #000000">;
</span><span style="color: #008080"> 34</span>     <span style="color: #0000ff">private</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">final</span> <span style="color: #0000ff">int</span> SO_TIMEOUT_MS = 60000<span style="color: #000000">;
</span><span style="color: #008080"> 35</span> 
<span style="color: #008080"> 36</span>     <span style="color: #0000ff">private</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">void</span><span style="color: #000000"> init() {
</span><span style="color: #008080"> 37</span>         <span style="color: #0000ff">if</span> (cm == <span style="color: #0000ff">null</span><span style="color: #000000">) {
</span><span style="color: #008080"> 38</span>             cm = <span style="color: #0000ff">new</span><span style="color: #000000"> PoolingHttpClientConnectionManager();
</span><span style="color: #008080"> 39</span>             cm.setMaxTotal(50);<span style="color: #008000">//</span><span style="color: #008000"> 整个连接池最大连接数</span>
<span style="color: #008080"> 40</span>             cm.setDefaultMaxPerRoute(5);<span style="color: #008000">//</span><span style="color: #008000"> 每路由最大连接数,默认值是2</span>
<span style="color: #008080"> 41</span>             SocketConfig sc =<span style="color: #000000"> SocketConfig.custom().setSoTimeout(SO_TIMEOUT_MS).build();
</span><span style="color: #008080"> 42</span> <span style="color: #000000">            cm.setDefaultSocketConfig(sc);
</span><span style="color: #008080"> 43</span> <span style="color: #000000">        }
</span><span style="color: #008080"> 44</span> <span style="color: #000000">    }
</span><span style="color: #008080"> 45</span> 
<span style="color: #008080"> 46</span>     <span style="color: #008000">/**</span>
<span style="color: #008080"> 47</span> <span style="color: #008000">     * 通过连接池获取HttpClient
</span><span style="color: #008080"> 48</span> <span style="color: #008000">     *
</span><span style="color: #008080"> 49</span> <span style="color: #008000">     * </span><span style="color: #808080">@return</span>
<span style="color: #008080"> 50</span>      <span style="color: #008000">*/</span>
<span style="color: #008080"> 51</span>     <span style="color: #0000ff">private</span> <span style="color: #0000ff">static</span><span style="color: #000000"> CloseableHttpClient getHttpClient() {
</span><span style="color: #008080"> 52</span> <span style="color: #000000">        init();
</span><span style="color: #008080"> 53</span>         <span style="color: #0000ff">return</span> HttpClients.custom().setConnectionManager(cm).setConnectionManagerShared(<span style="color: #0000ff">true</span><span style="color: #000000">) .build();
</span><span style="color: #008080"> 54</span> <span style="color: #000000">    }
</span><span style="color: #008080"> 55</span> 
<span style="color: #008080"> 56</span>     <span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span><span style="color: #000000"> String httpGetRequest(String url) {
</span><span style="color: #008080"> 57</span>         HttpGet httpGet = <span style="color: #0000ff">new</span><span style="color: #000000"> HttpGet(url);
</span><span style="color: #008080"> 58</span>         <span style="color: #0000ff">return</span><span style="color: #000000"> getResult(httpGet);
</span><span style="color: #008080"> 59</span> <span style="color: #000000">    }
</span><span style="color: #008080"> 60</span> 
<span style="color: #008080"> 61</span>     <span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> String httpGetRequest(String url, Map<String, Object> params) <span style="color: #0000ff">throws</span><span style="color: #000000"> URISyntaxException {
</span><span style="color: #008080"> 62</span>         URIBuilder ub = <span style="color: #0000ff">new</span><span style="color: #000000"> URIBuilder();
</span><span style="color: #008080"> 63</span> <span style="color: #000000">        ub.setPath(url);
</span><span style="color: #008080"> 64</span> 
<span style="color: #008080"> 65</span>         ArrayList<NameValuePair> pairs =<span style="color: #000000"> covertParams2NVPS(params);
</span><span style="color: #008080"> 66</span> <span style="color: #000000">        ub.setParameters(pairs);
</span><span style="color: #008080"> 67</span> 
<span style="color: #008080"> 68</span>         HttpGet httpGet = <span style="color: #0000ff">new</span><span style="color: #000000"> HttpGet(ub.build());
</span><span style="color: #008080"> 69</span>         <span style="color: #0000ff">return</span><span style="color: #000000"> getResult(httpGet);
</span><span style="color: #008080"> 70</span> <span style="color: #000000">    }
</span><span style="color: #008080"> 71</span> 
<span style="color: #008080"> 72</span>     <span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> String httpGetRequest(String url, Map<String, Object> headers, Map<String, Object><span style="color: #000000"> params)
</span><span style="color: #008080"> 73</span>             <span style="color: #0000ff">throws</span><span style="color: #000000"> URISyntaxException {
</span><span style="color: #008080"> 74</span>         URIBuilder ub = <span style="color: #0000ff">new</span><span style="color: #000000"> URIBuilder();
</span><span style="color: #008080"> 75</span> <span style="color: #000000">        ub.setPath(url);
</span><span style="color: #008080"> 76</span> 
<span style="color: #008080"> 77</span>         ArrayList<NameValuePair> pairs =<span style="color: #000000"> covertParams2NVPS(params);
</span><span style="color: #008080"> 78</span> <span style="color: #000000">        ub.setParameters(pairs);
</span><span style="color: #008080"> 79</span> 
<span style="color: #008080"> 80</span>         HttpGet httpGet = <span style="color: #0000ff">new</span><span style="color: #000000"> HttpGet(ub.build());
</span><span style="color: #008080"> 81</span>         <span style="color: #0000ff">for</span> (Map.Entry<String, Object><span style="color: #000000"> param : headers.entrySet()) {
</span><span style="color: #008080"> 82</span> <span style="color: #000000">            httpGet.addHeader(param.getKey(), String.valueOf(param.getValue()));
</span><span style="color: #008080"> 83</span> <span style="color: #000000">        }
</span><span style="color: #008080"> 84</span>         <span style="color: #0000ff">return</span><span style="color: #000000"> getResult(httpGet);
</span><span style="color: #008080"> 85</span> <span style="color: #000000">    }
</span><span style="color: #008080"> 86</span> 
<span style="color: #008080"> 87</span>     <span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span><span style="color: #000000"> String httpPostRequest(String url) {
</span><span style="color: #008080"> 88</span>         HttpPost httpPost = <span style="color: #0000ff">new</span><span style="color: #000000"> HttpPost(url);
</span><span style="color: #008080"> 89</span>         <span style="color: #0000ff">return</span><span style="color: #000000"> getResult(httpPost);
</span><span style="color: #008080"> 90</span> <span style="color: #000000">    }
</span><span style="color: #008080"> 91</span> 
<span style="color: #008080"> 92</span>     <span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> String httpPostRequest(String url, Map<String, Object> params) <span style="color: #0000ff">throws</span><span style="color: #000000"> UnsupportedEncodingException {
</span><span style="color: #008080"> 93</span>         HttpPost httpPost = <span style="color: #0000ff">new</span><span style="color: #000000"> HttpPost(url);
</span><span style="color: #008080"> 94</span>         ArrayList<NameValuePair> pairs =<span style="color: #000000"> covertParams2NVPS(params);
</span><span style="color: #008080"> 95</span>         httpPost.setEntity(<span style="color: #0000ff">new</span><span style="color: #000000"> UrlEncodedFormEntity(pairs, CONTENT_TYPE_UTF_8));
</span><span style="color: #008080"> 96</span>         <span style="color: #0000ff">return</span><span style="color: #000000"> getResult(httpPost);
</span><span style="color: #008080"> 97</span> <span style="color: #000000">    }
</span><span style="color: #008080"> 98</span> 
<span style="color: #008080"> 99</span>     <span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> String httpPostRequest(String url, Map<String, Object> headers, Map<String, Object><span style="color: #000000"> params)
</span><span style="color: #008080">100</span>             <span style="color: #0000ff">throws</span><span style="color: #000000"> UnsupportedEncodingException {
</span><span style="color: #008080">101</span>         HttpPost httpPost = <span style="color: #0000ff">new</span><span style="color: #000000"> HttpPost(url);
</span><span style="color: #008080">102</span> 
<span style="color: #008080">103</span>         <span style="color: #0000ff">for</span> (Map.Entry<String, Object><span style="color: #000000"> param : headers.entrySet()) {
</span><span style="color: #008080">104</span> <span style="color: #000000">            httpPost.addHeader(param.getKey(), String.valueOf(param.getValue()));
</span><span style="color: #008080">105</span> <span style="color: #000000">        }
</span><span style="color: #008080">106</span> 
<span style="color: #008080">107</span>         ArrayList<NameValuePair> pairs =<span style="color: #000000"> covertParams2NVPS(params);
</span><span style="color: #008080">108</span>         httpPost.setEntity(<span style="color: #0000ff">new</span><span style="color: #000000"> UrlEncodedFormEntity(pairs, CONTENT_TYPE_UTF_8));
</span><span style="color: #008080">109</span> 
<span style="color: #008080">110</span>         <span style="color: #0000ff">return</span><span style="color: #000000"> getResult(httpPost);
</span><span style="color: #008080">111</span> <span style="color: #000000">    }
</span><span style="color: #008080">112</span> 
<span style="color: #008080">113</span>     <span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> String httpPostJSON(String url, String json) <span style="color: #0000ff">throws</span><span style="color: #000000"> UnsupportedEncodingException {
</span><span style="color: #008080">114</span>         HttpPost httpPost = <span style="color: #0000ff">new</span><span style="color: #000000"> HttpPost(url);
</span><span style="color: #008080">115</span>         StringEntity s = <span style="color: #0000ff">new</span><span style="color: #000000"> StringEntity(json);
</span><span style="color: #008080">116</span> <span style="color: #000000">        s.setContentEncoding(CONTENT_TYPE_UTF_8);
</span><span style="color: #008080">117</span>         s.setContentType(CONTENT_TYPE_JSON);<span style="color: #008000">//</span><span style="color: #008000"> 发送json数据需要设置contentType</span>
<span style="color: #008080">118</span> <span style="color: #000000">        httpPost.setEntity(s);
</span><span style="color: #008080">119</span>         <span style="color: #0000ff">return</span><span style="color: #000000"> getResult(httpPost);
</span><span style="color: #008080">120</span> <span style="color: #000000">    }
</span><span style="color: #008080">121</span> 
<span style="color: #008080">122</span> 
<span style="color: #008080">123</span>     <span style="color: #0000ff">private</span> <span style="color: #0000ff">static</span> ArrayList<NameValuePair> covertParams2NVPS(Map<String, Object><span style="color: #000000"> params) {
</span><span style="color: #008080">124</span>         ArrayList<NameValuePair> pairs = <span style="color: #0000ff">new</span> ArrayList<><span style="color: #000000">();
</span><span style="color: #008080">125</span>         <span style="color: #0000ff">for</span> (Map.Entry<String, Object><span style="color: #000000"> param : params.entrySet()) {
</span><span style="color: #008080">126</span>             pairs.add(<span style="color: #0000ff">new</span><span style="color: #000000"> BasicNameValuePair(param.getKey(), String.valueOf(param.getValue())));
</span><span style="color: #008080">127</span> <span style="color: #000000">        }
</span><span style="color: #008080">128</span> 
<span style="color: #008080">129</span>         <span style="color: #0000ff">return</span><span style="color: #000000"> pairs;
</span><span style="color: #008080">130</span> <span style="color: #000000">    }
</span><span style="color: #008080">131</span> 
<span style="color: #008080">132</span>     <span style="color: #008000">/**</span>
<span style="color: #008080">133</span> <span style="color: #008000">     * 处理Http请求
</span><span style="color: #008080">134</span> <span style="color: #008000">     *
</span><span style="color: #008080">135</span> <span style="color: #008000">     * </span><span style="color: #808080">@param</span><span style="color: #008000"> request
</span><span style="color: #008080">136</span> <span style="color: #008000">     * </span><span style="color: #808080">@return</span>
<span style="color: #008080">137</span>      <span style="color: #008000">*/</span>
<span style="color: #008080">138</span>     <span style="color: #0000ff">private</span> <span style="color: #0000ff">static</span><span style="color: #000000"> String getResult(HttpRequestBase request) {
</span><span style="color: #008080">139</span> 
<span style="color: #008080">140</span>         RequestConfig.Builder config =<span style="color: #000000"> RequestConfig.copy(RequestConfig.DEFAULT);
</span><span style="color: #008080">141</span> <span style="color: #000000">        config.setConnectionRequestTimeout(CONNECTION_TIMEOUT_MS);
</span><span style="color: #008080">142</span> <span style="color: #000000">        config.setSocketTimeout(SO_TIMEOUT_MS);
</span><span style="color: #008080">143</span> 
<span style="color: #008080">144</span> <span style="color: #000000">        request.setConfig(config.build());
</span><span style="color: #008080">145</span> 
<span style="color: #008080">146</span>         <span style="color: #008000">//</span><span style="color: #008000"> CloseableHttpClient httpClient = HttpClients.createDefault();</span>
<span style="color: #008080">147</span>         CloseableHttpClient httpClient =<span style="color: #000000"> getHttpClient();
</span><span style="color: #008080">148</span>         CloseableHttpResponse response = <span style="color: #0000ff">null</span><span style="color: #000000">;
</span><span style="color: #008080">149</span>         <span style="color: #0000ff">try</span><span style="color: #000000"> {
</span><span style="color: #008080">150</span>             response =<span style="color: #000000"> httpClient.execute(request);
</span><span style="color: #008080">151</span>             <span style="color: #008000">//</span><span style="color: #008000"> response.getStatusLine().getStatusCode();</span>
<span style="color: #008080">152</span>             HttpEntity entity =<span style="color: #000000"> response.getEntity();
</span><span style="color: #008080">153</span>             <span style="color: #0000ff">if</span> (entity != <span style="color: #0000ff">null</span><span style="color: #000000">) {
</span><span style="color: #008080">154</span>                 <span style="color: #008000">//</span><span style="color: #008000"> long len = entity.getContentLength();</span><span style="color: #008000">//</span><span style="color: #008000"> -1 表示长度未知</span>
<span style="color: #008080">155</span>                 <span style="color: #0000ff">return</span><span style="color: #000000"> EntityUtils.toString(entity);
</span><span style="color: #008080">156</span> <span style="color: #000000">            }
</span><span style="color: #008080">157</span>         } <span style="color: #0000ff">catch</span><span style="color: #000000"> (IOException e) {
</span><span style="color: #008080">158</span> <span style="color: #000000">            e.printStackTrace();
</span><span style="color: #008080">159</span>         } <span style="color: #0000ff">finally</span><span style="color: #000000"> {
</span><span style="color: #008080">160</span>             <span style="color: #0000ff">try</span><span style="color: #000000"> {
</span><span style="color: #008080">161</span>                 <span style="color: #008000">//</span><span style="color: #008000"> 释放Socket流</span>
<span style="color: #008080">162</span> <span style="color: #000000">                response.close();
</span><span style="color: #008080">163</span>                 <span style="color: #008000">//</span><span style="color: #008000"> 释放Connection
</span><span style="color: #008080">164</span>                 <span style="color: #008000">//</span><span style="color: #008000"> httpClient.close();</span>
<span style="color: #008080">165</span>             } <span style="color: #0000ff">catch</span><span style="color: #000000"> (IOException e) {
</span><span style="color: #008080">166</span> <span style="color: #000000">                e.printStackTrace();
</span><span style="color: #008080">167</span> <span style="color: #000000">            }
</span><span style="color: #008080">168</span> <span style="color: #000000">        }
</span><span style="color: #008080">169</span> 
<span style="color: #008080">170</span>         <span style="color: #0000ff">return</span><span style="color: #000000"> EMPTY_STR;
</span><span style="color: #008080">171</span> <span style="color: #000000">    }
</span><span style="color: #008080">172</span> 
<span style="color: #008080">173</span> }

 

以上是org.apache.httpcomponents:httpclient 工具类的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
Internet Explorer 打开 Edge:如何停止 MS Edge 重定向Internet Explorer 打开 Edge:如何停止 MS Edge 重定向Apr 14, 2023 pm 06:13 PM

长期以来,InternetExplorer的失宠一直不是秘密,但随着Windows11的到来,现实开始了。Edge将来不再有时取代IE,它现在是微软最新操作系统中的默认浏览器。目前,您仍然可以在Windows11中启用InternetExplorer。但是,IE11(最新版本)已经有了一个正式的退役日期,即2022年6月15日,时间在流逝。考虑到这一点,您可能已经注意到InternetExplorer有时会打开Edge,而您可能不喜欢它。那么为什么会这样呢?在

如果您想最大限度地提高工作效率,请不要忽视这十种 AI 工具如果您想最大限度地提高工作效率,请不要忽视这十种 AI 工具Apr 07, 2023 pm 02:39 PM

ChatGPT 之前几十年来,人工智能 (AI) 一直在改变我们的生活和工作方式。从使用 AI 驱动的虚拟助手改善我们的个人生活,到通过智能自动化彻底改变整个行业,AI 一次又一次地证明了它的价值。但在 ChatGPT 之前,AI 过去常常执行特定的小任务,很少有人认真对待它。ChatGPT 之后有了 ChatGPT,世界变得疯狂了。就那么几天之内,人们都在谈论这种令人兴奋的语言模型的强大功能。重点突然转移到基于人工智能的工具上,越来越多的人开始使用这些基于人工智能的工具,从那时起,更多工具应运

win11无法使用ie11浏览器怎么办?(win11用不了ie浏览器)win11无法使用ie11浏览器怎么办?(win11用不了ie浏览器)Feb 10, 2024 am 10:30 AM

越来越多的用户开始升级win11系统,由于每个用户的使用习惯不同,还是有不少用户在使用ie11浏览器,那么win11系统用不了ie浏览器,该怎么办呢?windows11还支持ie11吗?下面就来看看解决办法。win11无法使用ie11浏览器的解决方法1、首先右键开始菜单,选择“命令提示符(管理员)”打开。2、打开之后,直接输入“Netshwinsockreset”,回车确定。3、确定之后再输入“netshadvfirewallreset&rdqu

使用Java 11中的HttpClient发送HTTP请求并处理响应使用Java 11中的HttpClient发送HTTP请求并处理响应Aug 01, 2023 am 11:48 AM

标题:使用Java11中的HttpClient发送HTTP请求并处理响应引言:在现代的互联网应用程序中,与其他服务器进行HTTP通信是非常常见的任务。Java提供了一些内置的工具,可以帮助我们实现这一目标,其中最新且推荐使用的是Java11中引入的HttpClient类。本文将介绍如何使用Java11中的HttpClient发送HTTP请求并处理响应,

如何使用golang中的http.Client进行HTTP请求的高级操作如何使用golang中的http.Client进行HTTP请求的高级操作Nov 18, 2023 am 11:37 AM

如何使用golang中的http.Client进行HTTP请求的高级操作引言:在现代开发中,HTTP请求是不可避免的一部分。golang提供了强大的标准库,其中包含了http包。http包提供了http.Client结构体,用于发送HTTP请求和接收HTTP响应。在本文中,我们将探讨如何使用http.Client进行HTTP请求的高级操作,并提供具体的代码示

如何使用Java中的httpclient进行重定向和请求转发的比较如何使用Java中的httpclient进行重定向和请求转发的比较Apr 21, 2023 pm 11:43 PM

这里介绍一下:HttpClient4.x版本,get请求方法会自动进行重定向,而post请求方法不会自动进行重定向,这是要注意的地方。我上次发生错误,就是使用post提交表单登录,当时没有自动重定向。请求转发和重定向的区别1、重定向是两次请求,转发是一次请求,因此转发的速度要快于重定向。2、重定向之后地址栏上的地址会发生变化,变化成第二次请求的地址,转发之后地址栏上的地址不会变化,还是第一次请求的地址。3、转发是服务器行为,重定向是客户端行为。重定向时浏览器上的网址改变,转发是浏览器上的网址不变

Win10打开IE自动跳转到Edge怎么取消_IE浏览器页面自动跳转的解决办法Win10打开IE自动跳转到Edge怎么取消_IE浏览器页面自动跳转的解决办法Mar 20, 2024 pm 09:21 PM

近期不少的win10用户们在使用电脑浏览器的时候发现自己的ie浏览器总是自动的跳转到edge浏览器,那么win10打开ie自动跳转edge怎么关闭?。下面就让本站来为用户们来仔细的介绍一下win10打开ie自动跳转edge关闭方法吧。1、我们登录edge浏览器,点击右上角...,找下拉的设置选项。2、我们进入设置后,在左侧栏点击默认浏览器。3、最后我们在兼容性中,勾选不允许IE模式下重新加载网站,重启ie浏览器即可。

ie快捷方式无法删除如何解决ie快捷方式无法删除如何解决Jan 29, 2024 pm 04:48 PM

ie快捷方式无法删除的解决办法:​1、权限问题;2、快捷方式损坏;3、软件冲突;4、注册表问题;5、恶意软件;6、系统问题;7、重新安装IE;8、使用第三方工具;9、检查快捷方式的目标路径;10、考虑其他因素;11、咨询专业人士。详细介绍:​1、权限问题,右键点击快捷方式,选择“属性”,在“安全”选项卡中,确保有足够的权限删除该快捷方式,如果没有,可以尝试以管理员身份运行等等。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。