jQuery ajax的跨域請求參數(shù)詳解

這幾天在做項(xiàng)目時發(fā)現(xiàn)對ajax的幾個參數(shù)特別不熟悉缴饭,之前總認(rèn)為只要會用就可以了,但經(jīng)過這段時間的工作經(jīng)歷發(fā)現(xiàn)颗搂,這幾個參數(shù)都要熟練掌握丢氢,現(xiàn)在在這里列一下ajax的幾個參數(shù)與使用方法,加深一下對ajax的理解

1.那么在理解ajax之前你們知道什么是ajax嗎疚察??比驻?

ajax:異步的javascript和xml岛抄,它不是一種新的語言而是一種使用現(xiàn)有標(biāo)準(zhǔn)的新方法,最大的優(yōu)點(diǎn)在與不更新整個頁面的情況下與服務(wù)器進(jìn)行數(shù)據(jù)交互掸掸,并更新部分網(wǎng)頁益楼。

2.jQuery中的ajax參數(shù)

2.1点晴、url:請求地址

要求為String類型的參數(shù)悯周,(默認(rèn)當(dāng)前頁地址)。

2.2屠橄、type:請求方式

要求為String類型的參數(shù)闰挡,請求方式(post或get)默認(rèn)為get。注意其他http請求方法溪北,例如put和delete也可以使用夺脾,但僅部分瀏覽器支持。

2.3咧叭、timeout:請求超時時長(毫秒)

要求為Number類型的參數(shù)菲茬,設(shè)置請求超時時間(毫秒)。此設(shè)置將覆蓋$.ajaxSetup()方法的全局設(shè)置

2.4婉弹、async:是否異步

要求為Boolean類型的參數(shù),默認(rèn)設(shè)置為true汉买,所有請求均為異步請求佩脊。如果需要發(fā)送同步請求垫卤,請將此選項(xiàng)設(shè)置為false。注意歇盼,同步請求將鎖住瀏覽器评抚,用戶其他操作必須等待請求完成才可以執(zhí)行伯复。

2.5啸如、cache:是否從瀏覽器緩存加載數(shù)據(jù)

要求為Boolean類型的參數(shù)氮惯,默認(rèn)為true(當(dāng)dataType為script時,默認(rèn)為false)妇汗,設(shè)置為false將不會從瀏覽器緩存中加載請求信息。

2.6寞焙、data:傳遞的參數(shù)是對象或字符串類型

要求為Object或String類型的參數(shù)互婿,發(fā)送到服務(wù)器的數(shù)據(jù)。如果已經(jīng)不是字符串模她,將自動轉(zhuǎn)換為字符串格式懂牧。get請求中將附加在url后。防止這種自動轉(zhuǎn)換畜侦,可以查看  processData(防止自動轉(zhuǎn)換)選項(xiàng)躯保。對象必須為key/value格式,例如{foo1:"bar1",foo2:"bar2"}轉(zhuǎn)換為&foo1=bar1&foo2=bar2验懊。如果是數(shù)組尸变,JQuery將自動為不同值對應(yīng)同一個名稱。例如{foo:["bar1","bar2"]}轉(zhuǎn)換為&foo=bar1&foo=bar2碱工。

2.7、dataType: 服務(wù)器返回的數(shù)據(jù)類型

要求為String類型的參數(shù)历筝,預(yù)期服務(wù)器返回的數(shù)據(jù)類型廊谓。如果不指定,JQuery將自動根據(jù)http包mime信息返回responseXML或responseText蹂析,并作為回調(diào)函數(shù)參數(shù)傳遞电抚。可用的類型如下:

xml:返回XML文檔蝙叛,可用JQuery處理。

html:返回純文本HTML信息蜘渣;包含的script標(biāo)簽會在插入DOM時執(zhí)行肺然。

script:返回純文本JavaScript代碼第喳。不會自動緩存結(jié)果校翔。除非設(shè)置了cache參數(shù)灾前。注意在遠(yuǎn)程請求時(不在同一個域下),所有post請求都將轉(zhuǎn)為get請求蔫敲。

2.8烧给、beforeSend:發(fā)送請求前做的工作是一個方法

這個參數(shù)主要是為了在向服務(wù)器發(fā)送請求前喝噪,執(zhí)行一些操作。要求為Function類型的參數(shù)榴鼎,發(fā)送請求前可以修改XMLHttpRequest對象的函數(shù),例如添加自定義HTTP頭盗似。在beforeSend中如果返回false可以取消本次ajax請求平项。XMLHttpRequest對象是惟一的參數(shù)。

    function(XMLHttpRequest){
           this;   //調(diào)用本次ajax請求時傳遞的options參數(shù)
        }

2.9接癌、complete: 請求完成后調(diào)用的函數(shù)是一個回調(diào)函數(shù)

要求為Function類型的參數(shù)扣讼,請求完成后調(diào)用的回調(diào)函數(shù)(請求成功或失敗時均調(diào)用)椭符。參數(shù):XMLHttpRequest對象和一個描述成功請求類型的字符串。

      function(XMLHttpRequest, textStatus){
         this;    //調(diào)用本次ajax請求時傳遞的options參數(shù)
      }

2.10销钝、success:請求成后的回調(diào)函數(shù)

要求為Function類型的參數(shù)蒸健,請求成功后調(diào)用的回調(diào)函數(shù),有兩個參數(shù)征讲。

     (1)由服務(wù)器返回橡娄,并根據(jù)dataType參數(shù)進(jìn)行處理后的數(shù)據(jù)。
     (2)描述狀態(tài)的字符串滤祖。
     function(data, textStatus){
        //data可能是xmlDoc瓶籽、jsonObj、html塑顺、text等等
        this;  //調(diào)用本次ajax請求時傳遞的options參數(shù)
     }

2.11、error:請求失敗的回調(diào)函數(shù)

要求為Function類型的參數(shù)扬绪,請求失敗時被調(diào)用的函數(shù)挤牛。該函數(shù)有3個參數(shù),即XMLHttpRequest對象墓赴、錯誤信息诫硕、捕獲的錯誤對象(可選)。ajax事件函數(shù)如下:

   function(XMLHttpRequest, textStatus, errorThrown){
      //通常情況下textStatus和errorThrown只有其中一個包含信息
      this;   //調(diào)用本次ajax請求時傳遞的options參數(shù)
   }

2.12长窄、contentType:傳遞給服務(wù)器時數(shù)據(jù)的編碼類型

要求為String類型的參數(shù)纲菌,當(dāng)發(fā)送信息至服務(wù)器時,內(nèi)容編碼類型默認(rèn)為"application/x-www-form-urlencoded"嚣潜。該默認(rèn)值適合大多數(shù)應(yīng)用場合椅贱。

2.13、dataFilter:

要求為Function類型的參數(shù)计技,給Ajax返回的原始數(shù)據(jù)進(jìn)行預(yù)處理的函數(shù)山橄。提供data和type兩個參數(shù)。data是Ajax返回的原始數(shù)據(jù)航棱,type是調(diào)用jQuery.ajax時提供的dataType參數(shù)。函數(shù)返回的值將由jQuery進(jìn)一步處理它抱。

        function(data, type){
            //返回處理后的數(shù)據(jù)
            return data;
        }

2.14朴艰、dataFilter:

要求為Function類型的參數(shù),給Ajax返回的原始數(shù)據(jù)進(jìn)行預(yù)處理的函數(shù)蜘腌。提供data和type兩個參數(shù)撮珠。data是Ajax返回的原始數(shù)據(jù)金矛,type是調(diào)用jQuery.ajax時提供的dataType參數(shù)。函數(shù)返回的值將由jQuery進(jìn)一步處理驶俊。

        function(data, type){
            //返回處理后的數(shù)據(jù)
            return data;
        }

2.15饼酿、global:

要求為Boolean類型的參數(shù),默認(rèn)為true想鹰。表示是否觸發(fā)全局ajax事件药版。設(shè)置為false將不會觸發(fā)全局ajax事件,ajaxStart或ajaxStop可用于控制各種ajax事件何缓。

2.16还栓、ifModified:

要求為Boolean類型的參數(shù),默認(rèn)為false氓皱。僅在服務(wù)器數(shù)據(jù)改變時獲取新數(shù)據(jù)勃刨。服務(wù)器數(shù)據(jù)改變判斷的依據(jù)是Last-Modified頭信息。默認(rèn)值是false廷区,即忽略頭信息贾铝。

2.17.jsonp:

要求為String類型的參數(shù),在一個jsonp請求中重寫回調(diào)函數(shù)的名字玖绿。該值用來替代在"callback=?"這種GET或POST請求中URL參數(shù)里的"callback"部分,例如{jsonp:'onJsonPLoad'}會導(dǎo)致將"onJsonPLoad=?"傳給服務(wù)器呐籽。

2.18蚀瘸、username:

要求為String類型的參數(shù),用于響應(yīng)HTTP訪問認(rèn)證請求的用戶名贪惹。

19寂嘉、password:

要求為String類型的參數(shù)泉孩,用于響應(yīng)HTTP訪問認(rèn)證請求的密碼。

2.20棵譬、processData:

要求為Boolean類型的參數(shù)订咸,默認(rèn)為true。默認(rèn)情況下骆撇,發(fā)送的數(shù)據(jù)將被轉(zhuǎn)換為對象(從技術(shù)角度來講并非字符串)以配合默認(rèn)內(nèi)容類型"application/x-www-form-urlencoded"父叙。如果要發(fā)送DOM樹信息或者其他不希望轉(zhuǎn)換的信息,請設(shè)置為false涌乳。

2.21甜癞、scriptCharset:

要求為String類型的參數(shù),只有當(dāng)請求時dataType為"jsonp"或者"script"蒸辆,并且type是GET時才會用于強(qiáng)制修改字符集(charset)。通常在本地和遠(yuǎn)程的內(nèi)容編碼不同時使用谆奥。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末酸些,一起剝皮案震驚了整個濱河市纺讲,隨后出現(xiàn)的幾起案子囤屹,更是在濱河造成了極大的恐慌肋坚,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,561評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件诲泌,死亡現(xiàn)場離奇詭異铣鹏,居然都是意外死亡诚卸,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,218評論 3 385
  • 文/潘曉璐 我一進(jìn)店門卒密,熙熙樓的掌柜王于貴愁眉苦臉地迎上來棠赛,“玉大人睛约,你說我怎么就攤上這事”缋裕” “怎么了?”我有些...
    開封第一講書人閱讀 157,162評論 0 348
  • 文/不壞的土叔 我叫張陵棍丐,是天一觀的道長。 經(jīng)常有香客問我巾钉,道長秘案,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,470評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮赤惊,結(jié)果婚禮上未舟,老公的妹妹穿的比我還像新娘。我一直安慰自己裕膀,他們只是感情好昼扛,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,550評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著渺鹦,像睡著了一般斯稳。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上卧斟,一...
    開封第一講書人閱讀 49,806評論 1 290
  • 那天珍语,我揣著相機(jī)與錄音竖幔,去河邊找鬼。 笑死募逞,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的刺啦。 我是一名探鬼主播纠脾,決...
    沈念sama閱讀 38,951評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼玛瘸,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了苟蹈?” 一聲冷哼從身側(cè)響起糊渊,我...
    開封第一講書人閱讀 37,712評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎慧脱,沒想到半個月后渺绒,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,166評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡磷瘤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,510評論 2 327
  • 正文 我和宋清朗相戀三年芒篷,在試婚紗的時候發(fā)現(xiàn)自己被綠了搜变。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片采缚。...
    茶點(diǎn)故事閱讀 38,643評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡挠他,死狀恐怖扳抽,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情殖侵,我是刑警寧澤贸呢,帶...
    沈念sama閱讀 34,306評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站拢军,受9級特大地震影響楞陷,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜茉唉,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,930評論 3 313
  • 文/蒙蒙 一固蛾、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧度陆,春花似錦艾凯、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,745評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至蹬蚁,卻和暖如春恃泪,著一層夾襖步出監(jiān)牢的瞬間郑兴,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,983評論 1 266
  • 我被黑心中介騙來泰國打工贝乎, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留杈笔,地道東北人。 一個月前我還...
    沈念sama閱讀 46,351評論 2 360
  • 正文 我出身青樓糕非,卻偏偏與公主長得像蒙具,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子朽肥,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,509評論 2 348

推薦閱讀更多精彩內(nèi)容

  • title: $.ajax參數(shù)詳解date: 2017-04-08 15:25:57tags: ajaxcateg...
    majunchang閱讀 319評論 0 1
  • Spring Web MVC Spring Web MVC 是包含在 Spring 框架中的 Web 框架禁筏,建立于...
    Hsinwong閱讀 22,358評論 1 92
  • 第一章 入門 基本功能:訪問和操作 dom 元素,控制頁面樣式衡招,對頁面的事件處理篱昔,與ajax完美結(jié)合,有豐富的插件...
    X_Arts閱讀 1,030評論 0 2
  • 別了故鄉(xiāng)始腾,幾經(jīng)輾轉(zhuǎn)來到京都州刽,歇身在一個北漂黨尋常的出租小屋±思或許是因?yàn)槟贻p穗椅,或許是還沒明白自己的心,時常會...
    夏日如火閱讀 117評論 0 0
  • 弄堂里飄來?xiàng)d子花的香味 淡淡的讓人陶醉 如水的花季悄悄地來臨 誰藏起了別人看不到的秘密 陰暗的角落里誰蜷縮起身影 ...
    小小小妖閱讀 161評論 0 1