當前位置:
首頁 > 最新 > 通過配置nginx支持客戶端ajax跨域請求

通過配置nginx支持客戶端ajax跨域請求

nginx反向代理添加配置支持ajax跨域訪問

今天折騰個問題折騰了半天,所以記錄下,也分享給各位有需要的朋友。很抱歉,最近比較忙,事情多,所以沒時間寫文章。

1

首先配置nginx,在server中添加反向代理對跨域的支持,即在location / {}中添加:

add_headerAccess-Control-Allow-Origin域名(注意,要帶上http);

如果你不要支持ajax獲取cookie並在請求時自動帶上cookie,那麼這裡可以配置為*,即支持所以其它域名跨域訪問。

add_headerAccess-Control-Allow-Credentialstrue;

設置該項可支持ajax可獲取到cookie。

add_headerAccess-Control-Allow-MethodsGET或者POST請求;

聲明跨域支持的請求方法,可以是get,post或是組合。

舉例:

2

修改ajax請求時自動加上cookie,xhrFields:

此時如果項目時上傳到nginx配置Access-Control-Allow-Origin所指定的域名伺服器時,那麼運行是沒問題的,但如果你是在本地開發調試,那麼瀏覽器就會報錯了。別急,往下就是我自己想出來的解決辦法。

3

因為我的電腦是mac系統的,所以我只說msc上的做法,windows同理。打開終端,輸入vim /etc/hosts 在文件末尾添加一條dns解析:127.0.0.1 nginx配置支持跨域的域名,寫完後保存退出,同時瀏覽器中把127.0.0.1改為該域名就可以了。

查看調試結果:

關注我們


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!

TAG: |