国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > WEB開發 > 正文

post跨域請求問題

2024-04-27 15:19:29
字體:
來源:轉載
供稿:網友

場景

昨天在項目開發中,遇到一個奇怪的問題:

使用fetch發送一個請求,并指定請求的方式methodPOST代碼如下:

var request = new Request(APIList.savePage, { method: 'POST', mode: 'cors', headers: new Headers({ 'Content-Type': 'application/json' }) }); fetch(request) .then(response => response.json()) .then(result =>{ debugger }) }

使用postman調試接口的時候是正常的,但是使用如上代碼發送請求的時候,卻遇到403錯誤,提示請求方式不允許: 這里寫圖片描述

從上圖中可以看到,請求方式上赫然寫著OPTIONS , 這是什么意思?

原因及方案

W3C規范中指出,網絡請求分為簡單請求和復雜請求:

簡單請求:get和部分post,post時content-type屬于application/x-www-form-urlencoded,multipart/form-data,text/plain中的一種復雜請求:簡單請求之外的請求

復雜請求發出之前,就會出現一次options請求。

第一次OPTIONS 空數據請求,為了獲取是否允許跨域,第二次才是帶數據請求。在這種情況下,即便是服務器允許程序跨域訪問,若不支持 options請求,請求也會死掉。

對應的處理方案就是:在服務端添加OPTIONS 請求支持,并做好跨域處理

OPTIONS

OPTIONS請求方法的主要用途有兩個:

1、獲取服務器支持的HTTP請求方法;也是黑客經常使用的方法。

2、用來檢查服務器的性能。例如:Ajax進行跨域請求時的預檢,需要向另外一個域名的資源發送一個HTTP OPTIONS請求頭,用以判斷實際發送的請求是否安全。

for more infomation

Reference

http://stackoverflow.com/questions/17333013/jquery-ajax-post-request-throws-405-method-not-allowed-on-restful-wcf

http://blog.csdn.net/gavin_luo/article/details/44855627


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 弥勒县| 白沙| 治多县| 邢台市| 佛学| 浦东新区| 汉沽区| 漳平市| 古交市| 共和县| 晋州市| 镇巴县| 麦盖提县| 固原市| 沙雅县| 苍山县| 靖边县| 永州市| 龙井市| 白水县| 泽州县| 锡林浩特市| 诸暨市| 渝北区| 江川县| 东宁县| 北碚区| 德保县| 蓬安县| 威远县| 博罗县| 诸城市| 咸丰县| 通渭县| 汕头市| 宜州市| 明星| 永兴县| 广丰县| 浦县| 攀枝花市|