關於ajax中出現2次請求的原因及解決辦法
前言
在專案中發現ajax中出現兩次請求,OPTIONS請求和POST請求,由於在上傳資料的時候,後臺可能2次都有反應,因此會造成資料上的錯誤。
1,具體表現如下:
查詢原因是瀏覽器對簡單跨域請求和複雜跨域請求的處理區別。
2,原因如下:
瀏覽器對複雜跨域請求的處理,在傳送真正的請求前, 會先發送一個方法為OPTIONS的預請求(preflight request), 用於試探服務端是否能接受真正的請求,如果options獲得的迴應是拒絕性質的,比如404\403\500等http狀態,就會停止post、put等請求的發出。
有三種方式會導致這種現象:
1、請求方法不是GET/HEAD/POST
2、POST請求的Content-Type並非application/x-www-form-urlencoded, multipart/form-data, 或text/plain
3、請求設定了自定義的header欄位
我的Content-Type設定為“application/json;charset=utf-8”並且自定義了header選項導致了這種情況。
3,解決辦法:
當時我的解決辦法是:讓後臺把跨域介面遷移到前端頁面所在的同一域名下,然後問題就解決了。
相關推薦
關於ajax中出現2次請求的原因及解決辦法
前言 在專案中發現ajax中出現兩次請求,OPTIONS請求和POST請求,由於在上傳資料的時候,後臺可能2次都有反應,因此會造成資料上的錯誤。 1,具體表現如下: 查詢原因是瀏覽器對簡單跨域請求和複雜跨域請求的處理區別。 2,原因如下: 瀏覽器對複雜跨域請求的處理
jquery ajax success 函數 異步調用方法中不能給全局變量賦值的原因及解決辦法
tex span var getc res syn ucc 解決辦法 asp 在調用一個jquery的ajax方法時我們有時會需要該方法返回一個值或者給某個全局變量賦值,可是我們發現程序執行完後並沒有獲取到我們想要的值,這時很有可能是因為你用的是ajax的異步調用async
vue在html中出現{{}}原因及解決辦法
在剛開始接觸vue的時候,我們都是直接用<script>引入vue.js使用。沒有藉助vue-cli腳手架來構建專案。 對於一個初學者來說,跟著文件慢慢搬磚,使用vue進行資料繫結。 記得在最開始使用vue寫公司專案的時候,在頁面初始化化是,THML會閃現出{{}},當時測試問我有沒有解決辦法
Linux系統中檔案行末尾出現^M的原因及解決辦法
不同系統,有不同的換行符號: 在windows下的文字檔案的每一行結尾,都有一個回車('\n')和換行('\r') 在linux下的文字檔案的每一行結尾,只有一個回車('\n'); 在Mac下的文字檔案的每一行結尾,只有一個換行('\r'); 因此:^M出現的原因: 在linux下開啟w
Python2中input出現的name “***” is not defined問題原因及解決辦法
我在輸入admin時,進行報錯,NameError: name 'hello' is not defined。上Python官網上查詢了一下文件,原因定位如下:Python2中對於input函式來說,它所希望讀取到的是一個合法的Python表示式,我的Python版本為2.7,因此出現這個問題,而在
Python2中input出現的name “xxx” is not defined問題原因及解決辦法
# coding=UTF-8 ''' Created on 2017年10月22日 @author: Dyna ''' str_1 = input("Enter a string:") str_2
派克斯寬頻撥號出現651原因及解決辦法
華科雲商為客戶提供安全、穩定、高效的{換IP軟體}。現有{派克斯}、{ip代理}、{撥號vps}等產品,全國100+城市ip可選,可滿足各類客戶換IP需求,歡迎客戶諮詢測試。 適用於各種網賺、驗證、註冊、投票、掛機、推廣營銷,並且IP重複率最低。我們所有的賬號都是電信直撥賬號,也是真正基於PPP
Springboot 出現ibatis:there is no getter for property named 'XX' in class XX的原因及解決辦法
目錄 Dao層書寫的過程中,對映的引數無法對應上。 Dao層書寫的過程中,對映的引數無法對應上。 比如在書寫Mapper層 @Select(“select * from XXX where XX =#{abc};”) 其中abc是Dao層ABC
Foxmail登陸失敗-NO LOGIN Login error password error問題出現原因及解決辦法(授權碼)
問題描述: 因為今天在一個專案中需要用到郵箱的客戶端授權碼,所以我在網易郵箱網頁版中設定了授權碼,但是在後來在Foxmail客戶端收取郵件時出現了問題: 我確定自己沒有改過密碼,所以又進行了多次嘗試 好吧,相信提示,我去改密碼(但我覺得密碼沒錯啊???)
Java記憶體各部分OOM出現原因及解決辦法
原文:https://blog.csdn.net/ls5718/article/details/52411211?utm_source=copy 一,jvm記憶體區域 1, 程式計數器 一塊很小的記憶體空間,作用是當前執行緒所執行的位元組碼的行號指示器。
Java連結Redis時出現 “ERR Client sent AUTH, but no password is set” 異常的原因及解決辦法
第一種情況: 在redis.conf中設定了密碼,而且redis還啟動了,為什麼說沒有密碼呢? linux下啟動redis有很多種方法, 方式一: ./redis-server & 這種方法啟動,不會帶上你的redis.conf配置檔案啟動 方式二:還有
資料庫中能查資料,mybatis中查詢為空的原因及解決方法
今日編寫專案時,發現了mybatis查詢操作時部分屬性為空值,部分屬性查詢出來了。 資料庫中存在值,也能查詢出來。 原因:mapper.xml檔案中,查詢屬性時,命名規範:查詢時的屬性必須對應java實體類中的屬性。因為我的工程師mybatis的逆向工程生成,有的
Java連線Redis時出現 “ERR Client sent AUTH, but no password is set” 異常的原因及解決辦法
給redis設定過auth後發現還是出現這種情況,這是由於啟動redis時自動載入的redis配置檔案並不是我們配置的那個,我在服務中找到redis: 右擊redis選擇屬性 這裡發現redis啟動時使用我們之前配置在環境變數裡的.exe檔案,先將服務停止
RabbitMQ中的消費者處理訊息HandleDelivery不生效的原因及解決辦法
今天遇到一個問題就是在使用rabbitMQ的時候,消費者接受了訊息但訊息處理函式沒有執行也就是handleDelivery沒有執行,也沒有報錯。 之後看了原始碼才發現,引數名字改了 可以看到在沒有加AMQP之前handleDelivery是灰色的,所以它沒有
MySQL登入時出現 Access denied for user 'root'@'xxx.xxx.xxx.xxx' (using password: YES) 的原因及解決辦法
【解決辦法】 1. 先用localhost登入 首先進入DOS介面,cd 你的mysql的安裝路徑。比如:cd C:\Program Files\MySQL\MySQL Server 5.6\bin 然後在 > 後輸入以下: mysql -u root -p 回
_062_Android_OOM出現常見原因及解決辦法
轉自https://blog.csdn.net/hudfang/article/details/51781997,感謝作者的無私分享。 Android的虛擬機器是基於暫存器的Dalvik,它的最大堆大小一般是16M,有的機器為24M。我們平常看到的OutOfMemory的錯誤,通常 是堆記憶體溢
Java鏈接Redis時出現 “ERR Client sent AUTH, but no password is set” 異常的原因及解決辦法
edit 解決 apach 重新啟動 cti cau 文本編輯 cto coder Java鏈接Redis時出現 “ERR Client sent AUTH, but no password is set” 異常的原因及解決辦法 【錯誤提
單節點Elasticsearch出現unassigned_shards原因及解決辦法
檢視單節點Elasticsearch健康狀態使用head外掛檢視叢集狀態從上面截圖可以看出存在5個unassigned的分片,新建索引blog5的時候,分片數為5,副本數為1,新建之後叢集狀態成為yellow,其根本原因是因為叢集存在沒有啟用的副本分片,我們先來看一下官網給出
eclipse出現source not found原因及解決
首先感謝java群的 @謝曉迪 和java技術交流群的 @85.1 的幫助 今天配置spring出現個問題, 經過群裡的大佬指點,是因為,沒有關聯原始碼的問題。 問題步驟: 1, CTRL+SHIFT+T 搜尋,然後出現如上對話方塊, 輸入需要查詢的類。比如dispatcherserv
解決Mac版百度五筆刪除"百度拼音"電腦重啟後輸入法選單中還存在的原因及解決辦法
由於本人使用五筆打字,試了很多Mac上五筆輸入法,最後用來用去還是覺得百度五筆最好用(僅是個人喜好,不喜勿噴)。安裝完後,Mac版百度五筆預設帶有百度拼音: 列表中的輸入法過多,切換時,需要多按幾次才能切換到百度五筆,大大降低了輸入的效率,所以要把不使用的