日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

JAVA HTTP反向代理實現過程詳解

瀏覽:24日期:2022-08-30 09:23:08

 反向代理(Reverse Proxy)方式是指以代理服務器來接受internet上的連接請求,然后將請求轉發給內部網絡上的服務器,并將從服務器上得到的結果返回給internet上請求連接的客戶端,此時代理服務器對外就表現為一個反向代理服務器。

 簡單來說,你的反向代理服務器會接收請求,但其自身不處理該請求,而是對請求經過一些處理,例如添加日志、緩存、身份驗證等服務,然后再將請求轉發到相應的應用服務器中進行處理,最后將處理結果返回。

我目前的需求是,A應用需要訪問B應用的報表頁面,B應用沒有源碼,要求自動處理B應用的登錄權限。避免用戶重復登錄。

1. 引入相關依賴

<dependency> <groupId>org.mitre.dsmiley.httpproxy</groupId> <artifactId>smiley-http-proxy-servlet</artifactId> <version>1.11</version></dependency>

這個jar包,只有兩個類,其中核心的就是 ProxyServlet,

作者重寫了HttpServlet的相關方法。他復制了新的request為proxyRequest,

然后替換了地址和相關屬性,并使用HttpClient將proxyRequest發送出去,

然后將接收到的proxyResponse的內容再復制給 HttpResponse 。

相當于中轉站。具體請看源碼。

https://github.com/mitre/HTTP-Proxy-Servlet

2.spring使用:

2.1 application.yml增加代理參數配置

# 設置代理proxy: servlet_url: /webappB/* target_url: https://webappB_HOST_IP:8001/webappB其他demo # servlet_url: /proxybaidu/* # target_url: https://www.baidu.com

此處有玄機:

為什么源url和目標url根路徑要一致(都為/webappB/)呢?

這是因為: target_url頁面里不止文本顯示,還有其他資源的調用,比如圖片,比如里面的js又調用了其他url.

這樣的話,假如 target頁面里某個圖片的url是相對路徑 img/test.jpg;

你的頁面上圖的 /webappC/image/test.jpg; 這樣host換了以后是找不到圖片地址的。

當然你也可以改下proxyServlet的源碼,讓它換成正確的url地址。如果不想改源碼的話,那還是一致的比較好。少麻煩。

2.2 注冊servlet.

@Configurationpublic class ProxyServletConfiguration { /** * 讀取配置文件中路由設置 */ @Value('${proxy.servlet_url}') private String servlet_url; /** * 讀取配置中代理目標地址 */ @Value('${proxy.target_url}') private String target_url; @Bean public Servlet createProxyServlet() { /** 創建新的ProxyServlet */ return new ProxyServlet(); } @Bean public ServletRegistrationBean proxyServletRegistration() { ServletRegistrationBean registrationBean = new ServletRegistrationBean(createProxyServlet(), servlet_url); //設置網址以及參數 Map<String, String> params = ImmutableMap.of('targetUri', target_url, 'log', 'true'); registrationBean.setInitParameters(params); return registrationBean; }}

2.3測試。ok.

localhost:8080/proxybaidu/

2.4. 當然你也可以重新寫個類,MyProxyServlet繼承ProxyServlet.

重新其中的 execute方法。添加相關的功能。日志,權限登錄等。

@Override protected HttpResponse (HttpServletRequest servletRequest, HttpServletResponse servletResponse, HttpRequest proxyRequest) throws IOException {//設置header里的授權信息 proxyRequest.setHeader('Authorization', 'Basic ' + getWebappBLoginAuth()); HttpResponse response = super.doExecute(servletRequest, servletResponse, proxyRequest);// 設置跨域,暫時不用。// String origin = servletRequest.getHeader('origin');// response.setHeader('Access-Control-Allow-Origin', origin);// response.setHeader('Access-Control-Allow-Credentials', 'true');// response.setHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS');// response.setHeader('Access-Control-Allow-Headers',//'Accept,Authorization,Cache-Control,Content-Type,DNT,If-Modified-Since,Keep-Alive,Origin' +// ',User-Agent,X-Mx-ReqToken,X-Requested-With'); return response; }

2.5 后記

這個ProxyServlet 跟 nginx看著基本功能一樣了,都可以反向代理了。不過擴展功能和IO性能肯定跟nginx沒法比。但是這個是用java語言寫的。方便二次開發。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日本少妇一区二区| 先锋影音久久久| 青草国产精品久久久久久| 蜜臀久久99精品久久久久宅男| 中文精品在线| 日韩有吗在线观看| 日本在线不卡视频| 国产欧美日本| 精品美女视频 | 亚洲免费福利| 亚洲天堂av影院| 久久久精品五月天| 午夜国产精品视频| 综合欧美精品| 国产乱人伦精品一区| 欧美黄色一区二区| 日韩毛片视频| 99re国产精品| 91嫩草精品| 国产精品99视频| 伊人精品一区| 亚洲精品免费观看| 久久爱www.| 97在线精品| 亚洲一区区二区| 国产亚洲高清在线观看| 国模精品一区| 1024精品久久久久久久久| 丝袜亚洲另类欧美| 欧美视频久久| 亚洲人成在线网站| 香蕉久久国产| 亚洲精品高潮| 97精品国产一区二区三区| 夜久久久久久| 国产精品.xx视频.xxtv| 中文av在线全新| 乱人伦精品视频在线观看| 欧美日韩一区二区三区不卡视频| 精品网站999| 黄色不卡一区| 久久激情五月婷婷| 久久精品国产大片免费观看| 四虎精品永久免费| 日韩国产专区| 日本中文字幕不卡| 日本在线高清| 深夜日韩欧美| 神马久久午夜| 天堂久久一区| 99久久亚洲精品| 91欧美极品| 亚洲性视频h| 欧美久久久网站| 亚洲二区在线| 美女在线视频一区| 国产亚洲午夜| 国产成人在线中文字幕| 中文字幕免费精品| 亚洲成人av观看| 欧美视频一区| 黄色在线一区| 成人高清一区| 日本天堂一区| 99视频一区| 极品av在线| 国产亚洲欧美日韩在线观看一区二区| 99久久亚洲精品| 国产日韩中文在线中文字幕| 999久久久国产精品| 国产精品一区二区三区av麻| 午夜av一区| 国产aa精品| 日韩精品第二页| 激情五月综合| 中文在线а√在线8| 国产精品一级| 亚洲专区视频| 亚洲手机在线| 97精品国产| 国产精品午夜av| 亚洲色图网站| 亚洲精品中文字幕乱码| 四季av一区二区凹凸精品| 深夜福利亚洲| 午夜国产欧美理论在线播放| av免费不卡国产观看| 国产亚洲字幕| 亚洲天堂av资源在线观看| 国产综合激情| 欧美gv在线| 91综合网人人| 精品国产亚洲一区二区三区| 欧美日韩99| 午夜性色一区二区三区免费视频| 99riav1国产精品视频| 三级小说欧洲区亚洲区| 麻豆精品国产91久久久久久| 亚洲精品观看| 黄色av日韩| 亚洲国产一区二区三区在线播放| 日韩欧美二区| 国产精品99一区二区三| 欧美激情在线精品一区二区三区| 日韩av成人高清| 亚州av日韩av| 亚洲精品动态| 亚洲另类av| 在线国产精品一区| 日本大胆欧美人术艺术动态| 夜夜嗨av一区二区三区网站四季av| 亚洲www啪成人一区二区| 日本免费一区二区三区四区| 亚洲精品一级| 天海翼亚洲一区二区三区| 中文不卡在线| 亚洲精品日本| 日韩成人午夜精品| 深夜福利亚洲| 日韩精品社区| 青草av.久久免费一区| 日韩av网站在线免费观看| 97久久超碰| 国产精品巨作av| 久久精品国产久精国产| 精品久久中文| 午夜久久中文| 蜜桃成人av| 午夜日本精品| 麻豆亚洲精品| 婷婷综合电影| 国产欧美高清视频在线| 国产精品巨作av| 精品久久久网| 免费观看亚洲| 国产精品99免费看| 亚洲免费播放| 亚洲区国产区| 欧美天堂在线| 欧美激情综合| 欧美激情另类| 精品一区在线| 亚洲麻豆一区| 国产日产精品_国产精品毛片| 国产精品高清一区二区| 成人国产精品| 一级欧洲+日本+国产| 视频一区欧美精品| 久久国产生活片100| 成人在线视频免费| 99久久亚洲精品蜜臀| 免费人成黄页网站在线一区二区| 日韩区一区二| 国语精品一区| 99热国内精品| 蜜桃一区二区三区在线观看| 91麻豆精品激情在线观看最新| 久久一区欧美| 日韩三区免费| 天堂成人国产精品一区| 国产毛片久久久| 亚洲播播91| 亚洲综合中文| 久久精品国产亚洲一区二区三区| 日韩国产一区| 亚洲另类视频| 国产成人精选| 99热免费精品| 国产精品成人自拍| 国产91精品对白在线播放| 在线一区二区三区视频| 欧美黑人做爰爽爽爽| 欧美va亚洲va日韩∨a综合色| 亚洲ww精品| 国产一区二区视频在线看| 好看的av在线不卡观看| 欧美片网站免费| 91精品久久久久久久久久不卡| 中日韩男男gay无套| 国产精品xvideos88| 999久久久国产精品| 91精品麻豆| 欧美69视频| 久久成人高清| 欧美中文字幕| 91日韩欧美| 日韩在线观看一区二区三区| 97se综合| 欧美自拍一区| 神马日本精品| 97久久超碰| 欧美日韩国产免费观看视频| 91成人在线网站| 久久精品高清| 麻豆精品视频在线观看| 丝袜诱惑制服诱惑色一区在线观看 | 在线精品亚洲| 中文字幕高清在线播放| 日本午夜精品一区二区三区电影| 亚洲一本视频|