1. 程式人生 > >通過代理處理的http請求實現

通過代理處理的http請求實現

在實際開發中往往遇到要通過代理IP和PORT才能連線到對方API的方式

在這裡需要給予代理的支援網路之間的訪問;

如果實現:設定代理IP和埠

HttpHost proxy = new HttpHost("10.59.103.237", 8080, "HTTP");
response = httpClient.execute(proxy, httpGet);

以一個httpget為例

public static String httpsGet(String url) {
    	CloseableHttpResponse response = null;
        try {
	        	CloseableHttpClient httpClient = SSLHttpClient.getSSLHttpClient();
			      HttpGet httpGet = new HttpGet(url);
						RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(20000).setConnectionRequestTimeout(20000).setSocketTimeout(20000).build();
						httpGet.setConfig(requestConfig);
						HttpHost proxy = new HttpHost("10.59.103.237", 8080, "HTTP");
						response = httpClient.execute(proxy, httpGet);
						HttpEntity entity = response.getEntity(); // 獲取返回實體
						String returnStr = EntityUtils.toString(entity, "utf-8");
						logger.info("本地介面返回值正常 :" + returnStr);
						return BCConvert.qj2bj(returnStr);
					} catch (Exception e) {
						logger.info("本地介面異常url :" + url);
						return null;
					} finally {
						if (response != null) {
							try {
								EntityUtils.consume(response.getEntity());
							} catch (IOException e) {
								e.printStackTrace();
							}
						}
				}
    }

這裡非常依賴於瀏覽器的代理設定;

瀏覽器設定代理後;是否連線到網路要開網路做驗證;

這樣程式碼中的代理才會生效

相關推薦

通過代理處理http請求實現

在實際開發中往往遇到要通過代理IP和PORT才能連線到對方API的方式在這裡需要給予代理的支援網路之間的訪問;如果實現:設定代理IP和埠HttpHost proxy = new HttpHost("10.59.103.237", 8080, "HTTP");response

Serlvet 處理http請求並保持長連接

數據 http print htm boa out eth 3.0 cte 一.Servlet,一個請求在容器中是如何處理的 Servlet規定的,相應客戶請求訪問特定Servlet流程如下: 1.客戶端發出請求。 2.Servlet容器接收客戶請求解析。 3.Se

(轉)關於Tomcat的點點滴滴(體系架構、處理http請求的過程、安裝和配置、目錄結構、設置壓縮和對中文文件名的支持、以及Catalina這個名字的由來……等)

https 設置 重啟 specific 調用 持久化數據 所在 original apps 轉自:http://itfish.net/article/41668.html 總結Tomcat的體系架構、處理http請求的過程、安裝和配置、目錄結構、設置壓縮和對中文文件名

java處理HTTP請求

connect implement turn set readline catch append 內容 nco 1 import com.diyfintech.wx.service.HttpService; 2 import org.springframework.s

Spring MVC 處理HTTP請求的整體流程

含義 alt myba 解析 patch ros ati 框架 ice   DispatcherServlet是一個前端控制器,是整個Spring MVC框架的核心組件。它在接收HTTP請求之後,根據請求調用Spring MVC中的各個組件。   常用接口及其含義:   1

Servlet初始化及處理HTTP請求

png cal 共享 servlet配置 用戶訪問 input 端口號 doget 本地 上一篇詳細介紹了與Servlet相關的幾個核心的接口和類,當我們自己寫Servlet類時,一般需要繼承HttpServlet類,實現init()、doGet()、doP

9.5 處理http 請求

default OS ane spa UNC () div min package package main import ( "fmt" "net/http" ) func main() { mux := http.NewServeMux()

Django處理http請求流程圖

技術 line alt 流程圖 AD add IT django tle Django處理http請求流程圖

C# 後臺處理http請求

處理 IT 方式 span 亂碼 bottom AD bytearray ret using System.Collections.Generic;using System.Linq;using System.Text;using System.Net;using Syst

django 是如何處理 http 請求

Web 應用的互動過程其實就是 http 請求與響應的過程。無論是在 PC 端還是移動端,我們通常使用瀏覽器來上網,我們的上網流程大致來說是這樣的: 我們開啟瀏覽器,在位址列輸入我們想訪問的網址,比如 http://www.djangoproject.com/(當然你也可能從收藏夾裡直接

Oracle 通過UTL_HTTP傳送http請求

HTTP_GET: CREATE OR REPLACE FUNCTION FN_HTTP_GET (v_url VARCHAR2) RETURN VARCHAR2 AS BEGIN DECLARE req UTL_HTTP.REQ; resp U

axios處理http請求,對比ajax

在處理http請求方面,已經不推薦使用vue-resource了,而是使用最新的axios,下面做一個簡單的介紹。 安裝 使用node npm install axios 使用cdn <script src="https://unpkg.com/

Spring Boot:AOP統一處理HTTP請求

版權宣告:博主原創/資料整理,轉載請註明出處!! 首先,AOP (Aspect Oriented Programming )指面向切面程式設計,通過預編譯方式或者執行時刻對目標物件動態地新增功能。 一、Spring Boot中新增AOP依賴 <

如何通過CORS跨域請求實現聊天小AI

聊天機器人github地址:https://github.com/Neekky/chatting-robot CORS跨域解決方案 CORS(跨源資源共享)通過新增一系列 HTTP 頭,讓伺服器能宣告哪些來源可以通過瀏覽器訪問該伺服器上的資源。 對於 GET 以外的 HTTP

nginx(https)反向代理tomcat(http)的實現

nginx和tomcat都動了配置 nginx.conf 配置如下: 畫重點:proxy_set_header X-Forwarded-Proto $scheme; 另外因為ngrok也需要80埠,新增了ip分別繫結在不同ip上。 user nginx; worker_pr

處理http請求返回的json串

       "application/json;charset=UTF-8");    org.apache.http.client.ResponseHandler handler = new BasicResponseHandler();     String rsp = (String) httpcli

Java工具類--通過HttpClient傳送http請求

在寫網路程式的時候,經常會有從網址獲取資料的需求,上一篇解析JSON就需要從百度獲取天氣資料,本文介紹一種Java傳送http請求的工具–HttpClient。 ##HttpClient的介紹 The most essential function of Ht

SpringMVC中servlet處理http請求原始碼解析

    Spring MVC的核心控制器為Servlet,所有訪問服務端的請求都將由servlet攔截接受,並進行相應處理最終進行返回。下面我們來看看它究竟是怎麼做的。     SpringMVC中的Servl

Actionscript使用Scoket方式傳送HTTP請求實現

FLash在安全方面的保守讓它成為了最安全和最廣泛的RIA應用開發技術,但是對程式設計師來說那可能不會那麼輕鬆了,比如最簡單的http請求,通常會被系統攔截,所以我們需要一種再底層的方式來實現Http請求。以下是ActionScript中最常用的Http請求的使用程式碼package { import f

Servlet-處理HTTP請求與響應

HttpServletRequest HttpServletRequest 物件代表客戶端的請求,客戶端的所有訊息都封裝在這個物件中,通過這個方法可以獲取請求資料 作用: 讀取和寫入HTTP請求資料 取得和設定Cookies 取得路徑資訊 標識HTTP資