欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

nginx服務器配置解決ajax的跨域問題

 更新時間:2017年03月26日 09:55:45   作者:yoyong  
本文給大家分享的是一個nginx服務器配置解決ajax的跨域問題的小技巧,非常的實用,有相同需求的小伙伴可以參考下

在采用jquery ajax調用http請求時,發(fā)現了一系列問題:

如采用firebug調試API請求(這個API是自己服務器的應用),看到服務器明明返回200狀態(tài),response返回數據也是json格式,但ajax返回的error。

在排除json數據格式不正確的原因之后,發(fā)現了ajax error函數返回“networkerror failed to execute ‘send' on ‘xmlhttprequest' failed to load ‘http //“ XMLHttpRequest.status=0,就是沒有初始化。

后來才知道是跨域問題(CORS),因為程序調用的是遠程服務器的API,服務器不允許跨域調用。如果只是簡單的方法,只需要在程序的response添加支持跨域的header添加屬性”Access-Control-Allow-Origin: *“即可。如java 服務器代碼:

yourownvariable.setHeader("Access-Control-Allow-Origin:", "origin url of your site");

yourownvariable.setHeader("Access-Control-Allow-Methods", "GET, POST,PUT");

如果是配置nginx服務器(如果是其他服務器,可以參考:I want to add CORS support to my server),需要在nginx.conf配置文件添加一下內容:

#
# Wide-open CORS config for nginx
#
location / {
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
#
# Custom headers and headers various browsers *should* be OK with but aren't
#
add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range';
#
# Tell client that this pre-flight info is valid for 20 days
#
add_header 'Access-Control-Max-Age' 1728000;
add_header 'Content-Type' 'text/plain charset=UTF-8';
add_header 'Content-Length' 0;
return 204;
}
if ($request_method = 'POST') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range';
add_header 'Access-Control-Expose-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range';
}
if ($request_method = 'GET') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range';
add_header 'Access-Control-Expose-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range';
}
}

相關文章

  • nginx地址重定向的方法

    nginx地址重定向的方法

    這篇文章主要介紹了nginx地址重定向的方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • Nginx請求轉發(fā)配置指南

    Nginx請求轉發(fā)配置指南

    Nginx 是一款高性能的 HTTP 和反向代理服務器,也是一個 IMAP/POP3/SMTP 代理服務器,本文檔將介紹如何使用 Nginx 配置請求轉發(fā),并解釋一些常用的配置參數,需要的朋友可以參考下
    2024-10-10
  • 通俗易懂講解nginx-rtmp-module

    通俗易懂講解nginx-rtmp-module

    nginx-rtmp-module?是一個用于 Nginx 的第三方模塊,它擴展了 Nginx 服務器的功能,使其能夠處理實時流媒體數據,本文就來詳細的介紹一下nginx-rtmp-module的使用,感興趣的可以了解一下
    2025-02-02
  • Nginx在Windows下的安裝及環(huán)境配置(將nginx作為服務運行)

    Nginx在Windows下的安裝及環(huán)境配置(將nginx作為服務運行)

    這篇文章主要介紹了Nginx在Windows下的安裝及環(huán)境配置,主要是將nginx作為服務運行,需要的朋友可以參考下
    2018-11-11
  • Nginx中的文件下載服務器詳解

    Nginx中的文件下載服務器詳解

    利 用Nginx的諸多內置指令可實現自動生成下載文件列表 頁、限制下載帶寬等功能,這篇文章給大家介紹Nginx中的文件下載服務器功能,感興趣的朋友一起看看吧
    2024-06-06
  • nginx報錯:[emerg] getpwnam(“www“)failed問題及解決

    nginx報錯:[emerg] getpwnam(“www“)failed問題及解決

    這篇文章主要介紹了nginx報錯:[emerg] getpwnam(“www“)failed問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • Nginx 日志改成 JSON 格式的方法

    Nginx 日志改成 JSON 格式的方法

    下面小編就為大家分享一篇Nginx 日志改成 JSON 格式的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • nginx下配置thinkphp文件的方法

    nginx下配置thinkphp文件的方法

    這篇文章主要介紹了nginx下配置thinkphp文件的方法,需要的朋友可以參考下
    2017-01-01
  • nginx環(huán)境下配置ssl加密(單雙向認證、部分https)

    nginx環(huán)境下配置ssl加密(單雙向認證、部分https)

    這篇文章主要介紹了nginx環(huán)境下配置ssl加密(單雙向認證、部分https),具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2016-11-11
  • nginx并發(fā)數限制limit_conn基本語法

    nginx并發(fā)數限制limit_conn基本語法

    這篇文章主要為大家介紹了nginx并發(fā)數限制limit_conn基本語法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04

最新評論