nginx配置跨域之後每次訪問會發送兩次請求
公司專案從前後端不分離轉到前後端分離
首先遇到的問題就是前後端分離的時候跨域的問題
但是當跨域成功配置並且能訪問成功的時候發現
每次客戶端的請求都會發送兩次
第一次是OPTIONS的請求,然後才是正常的請求
查閱資料得到的結論是:
第一個OPTIONS的請求是由Web伺服器處理跨域訪問引發的。
OPTIONS是一種“預檢請求”,瀏覽器在處理跨域訪問的請求時如果判斷請求為複雜請求,則會先向伺服器傳送一條預檢請求,根據伺服器返回的內容瀏覽器判斷伺服器是否允許該請求訪問。如果web伺服器採用cors的方式支援跨域訪問,在處理複雜請求時這個預檢請求是不可避免的。
一句話概括:因為我們公司的token通過header傳遞所以導致了瀏覽器判斷該請求是複雜請求,所以要先通過OPTIONS請求進行預檢查
解決方法
設定Access-Control-Max-Age(指定本次預檢請求的有效期,單位秒)
nginx配置增加
#設定一天的過期時間
add_header Access-Control-Max-Age 86400;
問題解決!
原文:https://blog.csdn.net/qq_35224032/article/details/82179428
相關推薦
nginx配置跨域之後每次訪問會發送兩次請求
公司專案從前後端不分離轉到前後端分離 首先遇到的問題就是前後端分離的時候跨域的問題 但是當跨域成功配置並且能訪問成功的時候發現 每次客戶端的請求都會發送兩次 第一次是OPTIONS的請求,然後才是正常的請求 查閱資料得到的結論是: 第一個OPTIONS的請求是由Web伺服器處理跨域訪問引發的。
訪問WEB首頁時,每個請求會發送2次請求到後臺的原因
最近做福建WEB話單功能時發現訪問WEB首頁時,每個請求會發送2次請求到後臺,俺表示非常的費解,用FF debug後現象如下:發現首頁被請求了2次,後來經過除錯後發現HTML中有這麼一段:當img標籤中src屬性為一個空字串時會產生這個多出來的請求!!產生此問題的HTML:s
Nginx配置跨域訪問
由於瀏覽器同源策略的存在使得一個源中載入來自其它源中資源的行為受到了限制。即會出現跨域請求禁止。 通俗一點說就是如果存在協議、域名、埠或者子域名不同服務端,或一者為IP地址,一者為域名地址(在跨域問題上,域僅僅是通過"url的首部"來識別而不會去嘗試判斷相同的IP地址對應著兩個域或者兩個
Nginx配置跨域請求 Access-Control-Allow-Origin *
默認 all 之前 methods 不包含 通知 text options flight 當出現403跨域錯誤的時候 No ‘Access-Control-Allow-Origin‘ header is present on the requested resource,需
Nginx配置跨域-http請求方法OPTIONS
Nginx配置跨域 http請求方法OPTIONS 看到標題有點扯,為什麼跨域與http的請求方法options有關係,因為當你跨域獲取資源時,瀏覽會出於安全的考慮會先使用OPTIONS做請求,
nginx配置跨域、gzip加速、代理詳細講解
color log 第一個 exp 重啟 優先 監聽端口 fault 選擇 1、配置跨域 這個很簡單,直接打開配置nginx.conf ,在http下配置下面三行代碼;當然如果你是想某一個虛擬主機下跨域,那就在哪個server下面添加 add_header Access-
vue專案如何使用nginx配置跨域
最近使用vue開發一個功能,npm run build之後打包的程式碼放在了a.com.cn下但是php介面部署在了b.com下,那麼問題來了,如何讓後端介面支援跨域。有兩種方法: 讓後端在返回資料的時候設定下返回請求的header,這種方法比較不穩定,因為
Nginx配置跨域支持功能
nginx配置 後臺服務 拒絕 pan ted 控制 sta nbsp tro 跨域是前端開發中經常會遇到的問題,前端調用後臺服務時,通常會遇到 No ‘Access-Control-Allow-Origin‘ header is present on the reques
【Nginx】第十二節 配置跨域訪問
author:咔咔 wechat:fangkangfk 先看一下哪些都屬於跨域 跨域:這個意思就是在A域名下的業務,需要請求到B域名的程式碼,這就這簡單的跨域 在正常的業務中,很難避免跨域,所以我們就需要使用nginx配
Nginx允許跨域訪問的配置問題
如今前後端分離的模式,越來越成為很多團隊的選擇,通過分離前後端的工作,是的雙方更能關注於自己核心的工作領域,只需要通過相應的API介面進行互動。 前後端工作的分離帶來的一個問題就是前後端在部署上分離的可能性,在部署上的分離又會觸發瀏覽器安全機制——同源策略,從而導致不能訪
vue 配置跨域訪問
class 服務器 gif .cn str ble scrip eap blank 主要在config->index.js中配置 proxyTable: { ‘/gameapi’: { changeOrigin: true, // target
nginx裏配置跨域
接口 accept PC 反向代理 ply frs alt 收藏 sport 發布於 881天前 作者 wendal 1404 次瀏覽 復制 上一個帖子 下一個帖子 標簽: nginx 跨域 if ($request_me
System.Web.Http.Cors配置跨域訪問的兩種方式
在webapi中使用System.Web.Http.Cors配置跨域資訊可以有兩種方式。 一種是在App_Start.WebApiConfig.cs的Register中配置如下程式碼,這種方式將在所有的webapi Controller裡面起作用。 using System; usi
Nginx如何配置跨域(多個域名)
假設需要允許來源為localhost或.*.example.com下所有二級域名的訪問,在nginx中只需要類似這樣配置即可: location / { set $match ""; # 支援http及https if ($http_origin ~* 'http
我也說說Nginx解決前端跨域問題,正確的Nginx跨域配置(後端Nginx CORS跨域配置、CORS設定,後端允許跨域請求)
最近連續兩個朋友問我跨域相關問題,我猜想可能不少朋友也遇到類似問題,我打算寫個部落格聊一下我實際使用的配置, 先說明一下,我並不太瞭解這配置,沒精力去了解太多,但我覺得其中有一些關鍵的小注意點,可能有些初學者不太注意到,導致配置有問題,本文章可能只對新手有點幫助,如果你有好
Nginx關於跨域的配置
upstream boss_gateway { server 127.0.0.1:32100 max_fails=2 fail_timeout=3s; } server { server_tag off; server_info off; server_tokens off;
nginx允許跨域訪問
1瀏覽器是禁止跨域訪問: 不安全,容易造成csrf攻擊: 使用者訪問正常網站,被其他網站劫持,返回帶有訪問這個網站的請求,帶著cookie去訪問這個網站。 nginx: Acc
【SpringBoot】配置跨域訪問
在主啟動類Application.java類裡面加入: private CorsConfiguration buildConfig() { CorsConfiguration corsCon
Vue實現axios手動配置跨域訪問以及對訪問進行封裝
1、首先專案中安裝axios外掛 2、手動配置,在src下面建立config資料夾,下面在建立index.js(訪問域名配置)和axios.js(請求攔截以及輕輕配置等) index.js // 系統引數配置 let url = { production: 'http://local
spring mvc專案中配置跨域訪問過濾器
1.在web.xml中配置:<filter> <filter-name>contextFilter</filter-name> <filter-class>xhsoft.fruit.core.filter.WebCon