校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > nginx 解決跨域問題嵌入第三方頁面

nginx 解決跨域問題嵌入第三方頁面

熱門標簽:藍點外呼系統 烏海智能電話機器人 在百度地圖標注車輛 寧夏房產智能外呼系統要多少錢 做外呼系統的公司違法嗎 貴陽教育行業電話外呼系統 撫順移動400電話申請 400電話申請方案 威海人工外呼系統供應商

前言

我們自己的系統需要加載第三方系統中的一部分組件。計劃的是第三方開發、提供相關接口,我們通過接口獲取到數據,然后,再用這些數據在我們系統中吧相關的功能實現了

可惜的是,領導沒有協調下來。正規的途徑搞不定,那就需要花式整活了

前面也說了,我們走接口拉數據重新渲染,這樣的玩法是比較常規的,缺點是需要重新去實現相關模塊,還需要對方開放接口。

現在只能走非正常渠道,比如,容易想到的,就是 我們直接把頁面嵌入到自己的系統,同時需要對第三方頁面的樣式,組件進行控制

困難

上面提到的方法,就是在我們自己的系統里,規劃一個 iframe,通過 src 屬性引入第三方的系統。
這里一個最大的問題,就是跨域。網絡上提到的最有可能解決的方案,通過 postMessage跨域,可惜,這個還是需要第三方配合

跨域定義

首先狹義的同源就是指,域名、協議、端口均為相同。
跨域,是指瀏覽器不能執行其他網站的腳本。它是由瀏覽器的同源策略造成的,是瀏覽器對JavaScript實施的安全限制。

nginx 的特性

反向代理

配置一個 url,用戶如果訪問這個 url ,就能給代理到真實需要的 url

動靜分離

正如字面的意思,動態的資源(需要服務器進行計算)和靜態的資源(一般是指 html,css,js,img等靜態頁面的相關資源)分離開來

嘗試實現

因為我們的 A 應用使用了 80 端口,第三方的 B 系統也使用了 80 端口,那就需要加后綴來區分代理到 B 系統,大致的 url 如下

# A 的 url
http://localhost/
# B 加后綴的 url
http://localhost/three-part
# B 的實際 url
http://172.16.1.1/

我們正常訪問 localhost 會到 A 系統的首頁,訪問 172.16.1.1 會訪問 B 的首頁,如果通過代理的 URL 去訪問,nginx 實際上會給代理到 172.16.1.1/three-part,沒錯,測試的時候,發現吧后綴給帶過去了?? 不排除我不專業,沒配置到位,但我測試的效果就是這樣

上述配置的思路,就是讓兩個應用同 ip 同端口,然后 A 應用里 iframe 加載了 B 的首頁,那就能通過 js 去操作

很遺憾,那就只有配置成不同的端口了,比如給 B 應用的代理 url 配置為 localhost:81/,這樣一來,無法在 A 應用的 iframe 對應的頁面里,編寫對 B 應用修改的 js 了

最終效果

隨著我對 B 應用的 f12,我發現,他們封裝了一個 x.min.js ,這個文件登陸的時候會加載,進入首頁后也會加載。
那么,騷操作就來了,我直接重寫他們的這個 js 文件,吧我需要的邏輯安排在文件的最后面,然后,讓頁面在加載這個 x.min.js 的時候,去加載我服務器端修改過后的 js 文件,而不是去加載第三方服務器里的 x.min.js

整個流程的示意圖如下示:

下面就是我配置好正在用的nginx配置

upstream mir{
    server 10.1.128.58:80;
}
server {
 listen     localhost:8001; # nginx 需要監聽的 url及對應的端口
 location =/static/mir.min.js {
  root C:/r9/bin/resources;
 }
 location / {
  # 可以理解為這里用了一個 url 的變量名,這個變量名定義在 upstream 中
  proxy_pass http://mir;
  # 下面幾項算是跨域標配,直接抄上就行
  proxy_set_header Host $http_host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Fonwarded-For $proxy_add_x_forwarded_for;
  if ($request_method = 'OPTIONS') {
   return 204;
  }
 }
 # 靜態資源放行
 location ~ \.(gif|jpg|jpeg|css|js|svg)$ {
  proxy_pass http://mir;
  proxy_set_header Host $http_host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Fonwarded-For $proxy_add_x_forwarded_for;
  expires 30d;
 }
 # 添加跨域請求頭
 add_header 'Access-Control-Allow-Origin' '*';
 add_header 'Access-Control-Allow_Credentials' 'true';
 add_header 'Access-Control-Allow-Headers' 'Authorization,Accept,Origin,DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range';
 add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS,PUT,DELETE,PATCH';
 #error_page  404              /404.html;

 # redirect server error pages to the static page /50x.html
 # 配置常規的友好錯誤提示頁
 error_page   500 502 503 504  /50x.html;
 location = /50x.html {
  root   html;
 }

}

nginx 里的 url 匹配,有一個特點,就是最先匹配原則,每一個請求,從上往下,先匹配到哪一個規則,就直接跳轉這個規則對應配置的 url

題外話

因為第三方的系統,其實算是一個常規的系統,比如,標配有登陸頁,我們需要吞掉登陸的這個步驟,所以,我們需要在動手腳的 x.min.js 里檢測第三方系統正確加載后,是否需要進行登陸操作,同時為了友好起見,我們需要添加一個遮罩層,在我們對第三方的頁面處理干凈之前,得先遮住不讓客戶看到。
等正確載入第三方的系統后,就可以按需要進行功能裁剪,樣式替換

到此這篇關于nginx 解決跨域問題嵌入第三方頁面的文章就介紹到這了,更多相關nginx 跨域嵌入第三方頁面內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

標簽:銅川 蕪湖 泰州 那曲 周口 慶陽 松原 朝陽

巨人網絡通訊聲明:本文標題《nginx 解決跨域問題嵌入第三方頁面》,本文關鍵詞  nginx,解決,跨域,問題,嵌入,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《nginx 解決跨域問題嵌入第三方頁面》相關的同類信息!
  • 本頁收集關于nginx 解決跨域問題嵌入第三方頁面的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    国产一区二区三区高清播放| 久久91精品国产91久久小草| 成人黄色在线视频| 日韩欧美综合在线| 一区二区三区四区在线免费观看| 视频一区中文字幕| 欧美精品久久99| 日本亚洲三级在线| 91麻豆精品91久久久久同性| 五月婷婷久久丁香| 日韩欧美美女一区二区三区| 久久精品99国产国产精| 欧美一区国产二区| 久久国产精品露脸对白| 精品国产不卡一区二区三区| 一级做a爱片久久| 九一久久久久久| 国产拍揄自揄精品视频麻豆| 成人午夜激情在线| 亚洲一线二线三线视频| 欧美在线观看视频在线| 轻轻草成人在线| 精品国产一区二区三区久久影院| 亚洲午夜av在线| 精品国产青草久久久久福利| av资源网一区| 激情欧美一区二区三区在线观看| 国产婷婷色一区二区三区在线| 91片黄在线观看| 国产高清视频一区| 青青草成人在线观看| 亚洲欧洲精品一区二区三区| 欧美日韩美少妇| av动漫一区二区| 久久精品久久综合| 亚洲精品在线电影| 国产丶欧美丶日本不卡视频| 日日嗨av一区二区三区四区| 亚洲欧洲无码一区二区三区| 9191久久久久久久久久久| av日韩在线网站| 国产一区在线精品| 国产酒店精品激情| 美女国产一区二区| 精品一区二区三区av| 免费在线观看成人| 亚洲资源在线观看| 亚洲乱码国产乱码精品精的特点| 国产欧美精品一区aⅴ影院| 欧美成人a视频| 久久久99精品久久| 国产精品高潮呻吟| 亚洲人成伊人成综合网小说| 亚洲精品高清在线| 一区二区在线观看视频| 日韩成人午夜电影| 亚洲欧美国产77777| 精品久久国产字幕高潮| 久久综合色婷婷| 亚洲日本va午夜在线影院| 亚洲电影中文字幕在线观看| 国产一区二区三区香蕉| 欧美日韩免费高清一区色橹橹| 欧美精品一区二区三区久久久| 综合久久给合久久狠狠狠97色| 日韩电影免费在线看| 91行情网站电视在线观看高清版| 国产亚洲综合性久久久影院| 日韩一区精品视频| 欧美午夜一区二区三区免费大片| 国产精品污污网站在线观看| 韩国av一区二区| 精品国产乱子伦一区| 日本一区中文字幕| 8x8x8国产精品| 美女视频一区二区三区| 7777精品伊人久久久大香线蕉| 亚洲一区二区av在线| 欧美日韩一级片在线观看| 欧美变态tickle挠乳网站| 亚洲福利一二三区| 日韩一区二区在线观看视频| 日韩精品一卡二卡三卡四卡无卡| 欧美高清一级片在线| 男女性色大片免费观看一区二区| 欧美一区二区三区精品| 免费日韩伦理电影| 91精品欧美久久久久久动漫| 日产欧产美韩系列久久99| 欧美久久一二区| 奇米精品一区二区三区在线观看一| 精品国产欧美一区二区| 国产成人免费在线观看| 亚洲一二三区在线观看| 日韩亚洲国产中文字幕欧美| 成人精品免费看| 香蕉影视欧美成人| 日本一区二区三区久久久久久久久不 | 欧美性欧美巨大黑白大战| 亚洲国产精品久久不卡毛片| 久久久久久久电影| 国模娜娜一区二区三区| 国产精品区一区二区三区| 色素色在线综合| 国产精品一区二区在线观看网站 | 久久国产精品第一页| 国产精品免费久久| 日韩视频中午一区| 色狠狠综合天天综合综合| 国产麻豆成人精品| 视频在线观看一区| 亚洲综合色视频| 亚洲男人的天堂在线观看| www国产成人| 久久亚洲一区二区三区明星换脸| 欧美日韩一区二区三区四区| 成人精品国产福利| 成人av在线影院| eeuss影院一区二区三区| 成人污污视频在线观看| 国产高清在线观看免费不卡| 国产乱码一区二区三区| 国产成人免费在线视频| 国产精品亚洲成人| 石原莉奈一区二区三区在线观看| 亚洲欧洲国产日韩| 亚洲高清视频的网址| 青娱乐精品在线视频| 国产乱码字幕精品高清av| 成人一区二区三区在线观看| 国产精品一二一区| 丁香激情综合五月| 91美女片黄在线观看| 欧美日韩视频在线第一区| 欧美日韩精品欧美日韩精品| 日韩三级视频在线观看| 中文字幕精品三区| 首页国产欧美日韩丝袜| 国产91精品久久久久久久网曝门 | 国产拍揄自揄精品视频麻豆| 亚洲免费在线观看| 三级久久三级久久久| 国产成人亚洲综合a∨婷婷| 色婷婷国产精品综合在线观看| 欧美老女人在线| 一区二区三区在线看| 国产精品一区在线| 欧美一区二区三区免费在线看 | 日韩精品视频网站| 99久免费精品视频在线观看| 欧美日韩亚洲另类| 亚洲男同1069视频| 国产成人精品一区二| 26uuu另类欧美亚洲曰本| 亚洲国产日日夜夜| 欧美在线制服丝袜| 一区二区在线观看免费| 成熟亚洲日本毛茸茸凸凹| 精品粉嫩aⅴ一区二区三区四区| 亚洲国产成人tv| 欧美自拍丝袜亚洲| 亚洲亚洲人成综合网络| 欧美色图激情小说| 亚洲激情第一区| 91国产免费观看| 中文字幕亚洲电影| 欧美网站一区二区| 日本中文在线一区| 日韩欧美电影一区| 久久国产生活片100| 国产欧美精品日韩区二区麻豆天美| 久久狠狠亚洲综合| 欧美韩日一区二区三区| 成人高清在线视频| 日韩1区2区3区| 色综合天天综合在线视频| 亚洲一线二线三线视频| 欧美www视频| 欧美日韩在线综合| 国产一区二区三区香蕉| 一区二区三区电影在线播| 56国语精品自产拍在线观看| 国产精品69毛片高清亚洲| 夜夜嗨av一区二区三区四季av | 亚洲成人精品影院| 国产区在线观看成人精品| 555夜色666亚洲国产免| 成人手机电影网| 亚洲va在线va天堂| 国产精品午夜在线| 欧美大片免费久久精品三p| 在线一区二区三区四区五区 | 久久久久国产免费免费| 在线91免费看| 91官网在线免费观看| 99久久综合国产精品| 裸体在线国模精品偷拍| 日韩电影一区二区三区四区| 亚洲综合色视频| 久久久91精品国产一区二区精品|