摘要:背景后端使用并更改本地文件,起本地服務。使用調用后端接口,要求為格式,并要求在里加一些內容。借用凝雨關于跨域踩坑經驗總結
背景
后端使用Nginx并更改本地host文件,起本地服務。將aaa.bbbb.com代理至本地IP地址(10.26.36.156)。
使用$.ajax調用后端restful接口,要求content-type為application/json格式,并要求在request headers里加一些內容。
$.ajax({ headers : { "Accept": "application/json", "Content-Type": "application/json", "user-id":"123", "ghf-id": "456" }, url: "https://10.26.36.156/aaa/vds/dsg", type: "PATCH", data: JSON.stringify(data), dataType: "json", success: function (response) { }, error: function (msg) { } })現象
后端使用postman 可以訪問成功
瀏覽器network抓請求,結果如下,但是代碼并沒有觸發后端的代碼斷點....
這是為什么呢?
因為host文件的配置,騙過了瀏覽器,進行了一次options請求,但是對于js引擎來說,這里的ip地址與瀏覽器的域名不同,所以出現了跨域,因此設置到了Access-Control-Request-Headers里面。
解決方案方案一:
不走IP(不寫絕對路徑),而是相對路徑
方案二:
將IP地址加入白名單(node js里面是如此,其他語音應該也有相應的)。
借用凝雨關于跨域踩坑經驗總結
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/77273.html
摘要:背景后端使用并更改本地文件,起本地服務。使用調用后端接口,要求為格式,并要求在里加一些內容。借用凝雨關于跨域踩坑經驗總結 背景 后端使用Nginx并更改本地host文件,起本地服務。將aaa.bbbb.com代理至本地IP地址(10.26.36.156)。使用$.ajax調用后端restful接口,要求content-type為application/json格式,并要求在reques...
摘要:背景后端使用并更改本地文件,起本地服務。使用調用后端接口,要求為格式,并要求在里加一些內容。借用凝雨關于跨域踩坑經驗總結 背景 后端使用Nginx并更改本地host文件,起本地服務。將aaa.bbbb.com代理至本地IP地址(10.26.36.156)。使用$.ajax調用后端restful接口,要求content-type為application/json格式,并要求在reques...
摘要:這種情況通常發生在反向代理的時候,前端發起請求代理服務器,代理服務器發起請求到,這時候就容易導致域名不一致,請一定要注意這點。 寫在最前 前后端分離其實有兩類: 開發階段使用dev-server,生產階段是打包成靜態文件整個放入后端項目中。 開發階段使用dev-server,生產階段是打包成靜態文件放入單獨的靜態資源服務器中,如nginx。 這兩種方案最大的區別就是生產階段。由于第...
摘要:這種情況通常發生在反向代理的時候,前端發起請求代理服務器,代理服務器發起請求到,這時候就容易導致域名不一致,請一定要注意這點。 寫在最前 前后端分離其實有兩類: 開發階段使用dev-server,生產階段是打包成靜態文件整個放入后端項目中。 開發階段使用dev-server,生產階段是打包成靜態文件放入單獨的靜態資源服務器中,如nginx。 這兩種方案最大的區別就是生產階段。由于第...
閱讀 1377·2021-10-08 10:04
閱讀 2681·2021-09-22 15:23
閱讀 2724·2021-09-04 16:40
閱讀 1172·2019-08-29 17:29
閱讀 1492·2019-08-29 17:28
閱讀 2988·2019-08-29 14:02
閱讀 2221·2019-08-29 13:18
閱讀 838·2019-08-23 18:35