国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

Nginx如何進行跨域配置,才能使用DELETE,PUT請求方法

瀏覽:114日期:2024-06-22 15:58:09

問題描述

背景描述

準備基于Nginx設計一個Restful Api,需要用到DELETE,PUT請求方式,并且要支持跨域訪問,目前有本地虛擬主機http://api.zlzkj.com和http://127.0.0.1/api/web兩個測試域。

問題描述

nginx.conf相關跨域配置

add_header Access-Control-Allow-Origin *;add_header Access-Control-Allow-Headers X-Requested-With;add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;

ajax請求

<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8' /> <title>Document</title></head><body> Resetful Api設計 </script> <script>$.ajax({ url: ’http://api.zlzkj.com/admins/1’, type: ’DELETE’, dataType: ’JSON’}); </script></body></html>

在http://api.zlzkj.com/下訪問http://api.zlzkj.com/admins/1可以正常使用DELETE請求方式

Nginx如何進行跨域配置,才能使用DELETE,PUT請求方法

在http://127.0.0.1/api/web/下訪問http://api.zlzkj.com/admins/1會發現Request Method過濾成OPTINOS方式了,正常應該是DELETE方式,引起了服務器的405 Method Not Allowed

Nginx如何進行跨域配置,才能使用DELETE,PUT請求方法

翻墻也找過一些相關文章,好像他們的Nginx這樣配置后就可以跨域正常使用DELETE請求方式了,而我這邊只有在同域下才能使用,跨域就會將Request Method過濾成OPTINOS方式了,就引起了了405錯誤。是Nginx版本的問題?環境配置的問題?希望大家能給點見解,謝謝了。

問題解答

回答1:

OPTIONS請求比較特殊,該方法用于請求服務器告知其支持哪些其他的功能和方法。在跨域的時候,瀏覽器會自動發起一個OPTIONS請求。當你的服務器響應了OPTIONS請求的時候,會有類似如下的響應:

Allow → GET,HEAD,POST,OPTIONS,TRACECache-Control → max-age=86400Connection → keep-aliveContent-Encoding → gzipContent-Length → 20Content-Type → text/htmlDate → Thu, 30 Jun 2016 04:00:24 GMTExpires → Fri, 01 Jul 2016 04:00:24 GMTServer → bfe/1.0.8.14Vary → Accept-Encoding,User-Agent

如果你的服務器沒有處理響應OPTIONS,會有如下的響應:

Connection → keep-aliveContent-Encoding → gzipContent-Type → text/htmlDate → Thu, 30 Jun 2016 04:02:35 GMTServer → nginx/1.4.6 (Ubuntu)Transfer-Encoding → chunked

可以看出,缺少了Allow響應頭所以,你應該有處理這個OPTIONS請求的服務,這個可以直接用nginx做,在配置中,加一下如下的配置:

if ($request_method = ’OPTIONS’) { add_header Access-Control-Allow-Origin *; add_header Access-Control-Allow-Credentials true; add_header Access-Control-Allow-Methods ’GET, POST, OPTIONS’; add_header ’Access-Control-Allow-Headers’ ’DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type’; return 204; }回答2:

$.ajax({ url: ’http://api.zlzkj.com/admins/1’, type: ’DELETE’, dataType: ’JSON’, crossDomain:true});

主站蜘蛛池模板: av中文字幕网免费观看 | 国产免费高清福利拍拍拍 | 国产一级毛片卡 | 欧美一级毛片免费播放器 | 91成人小视频 | avtt亚洲一区中文字幕 | 97视频免费上传播放 | 国产一区二区精品久久91 | 中文字幕日韩精品中文区 | 99久久免费中文字幕精品 | 一级爱爱片一级毛片-一毛 一级爱做片免费观看久久 一级白嫩美女毛片免费 | 国产三级日本三级美三级 | 欧美一区二区三区久久久人妖 | 国产男女交性视频播放免费bd | 亚洲高清视频免费 | 欧美猛交xxxx免费看 | 国产成人精品一区二区免费 | 日韩在线精品 | 国内精自品线一区91 | 免费看成人频视在线视频 | 日本一级级特黄特色大片 | 日韩免费在线视频 | 国产视频网站在线观看 | 在线观看人成午夜影片 | 久爱www免费人成福利播放 | 免费精品一区二区三区在线观看 | 亚洲男人天 | 成人交性视频免费看 | 久久精品国产99久久72 | 中国一级做a爱片免费 | 美国三级在线观看 | 欧美成人免费午夜全 | 国产亚洲一区二区三区 | 日韩一页 | 一级在线毛片 | 精品国产a| 在线精品视频播放 | se视频在线观看 | 成人禁在线观看午夜亚洲 | 999热精品这里在线观看 | 日韩一级精品视频在线观看 |