您好,登錄后才能下訂單哦!
jquery是js的類庫,js本身不能操作header,因?yàn)閖s是在瀏覽器加載頁面過程中才開始執(zhí)行的header需要服務(wù)器端執(zhí)行操作
如果是ajax,是可以設(shè)置header
$.ajax({ url: "", data: {}, type: "GET", beforeSend: function(xhr){xhr.setRequestHeader('X-Test-Header', 'test-value');},//這里設(shè)置header success: function() {} });
也就是setRequestHeader函數(shù)
如何在ajax請(qǐng)求中設(shè)置特殊的RequestHeader
現(xiàn)在ajax應(yīng)用已經(jīng)相當(dāng)廣泛了,有很多不錯(cuò)的ajax框架可供使用。ajax是一個(gè)異步請(qǐng)求,也主要是一種客戶端的腳本行為。那么,如何在請(qǐng)求之前為請(qǐng)求添加特殊的一些頭部信息呢?
下面是一個(gè)簡(jiǎn)單的例子,我用jQuery編寫,它的ajax函數(shù)中,有一個(gè)beforeSend方法,這個(gè)方法接受一個(gè)參數(shù),就代表了發(fā)起異步請(qǐng)求的XMLHttpRequest對(duì)象,我們可以用該對(duì)象的setRequestHeader方法實(shí)現(xiàn)我們的目的
為什么要setRequestHeader?
比如,在及時(shí)通信系統(tǒng)中,每次獲取消息或者發(fā)送消息,都需要去判斷這個(gè)用戶是否還在連線中,通過設(shè)置"accessToken",就可以實(shí)現(xiàn)正常通信;
beforeSend: function(request) { request.setRequestHeader("accessToken", accessToken); }, <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <script src="jquery-1.3.2-vsdoc.js" type="text/javascript"></script> <script type="text/javascript" language="javascript"> $(function() { $("#test").click(function() { $.ajax({ type: "GET", url: "default.aspx", beforeSend: function(request) { request.setRequestHeader("Test", "Chenxizhang"); }, success: function(result) { alert(result); } }); }); }); </script> </head> <body> <form id="form1" runat="server"> <div id="v"> </div> <input type="button" value="測(cè)試" id="test" /> </form> </body> </html>
jQuery.ajax() 如何設(shè)置 Headers 中的 Accept 內(nèi)容
其實(shí)很簡(jiǎn)單,首先如果是常見類型,則請(qǐng)直接設(shè)置 dataType 屬性
$.ajax({ dataType: "json", type: "get", success: function (data) { } });
設(shè)置 dataType 后,會(huì)去 accepts 屬性(此屬性會(huì)預(yù)置一些常用類型)中直接拿相應(yīng)的類型添加到 Accept 中。
)%X02M](8[BKGW21{EY{0GD
如果想自己自定義 jQuery 中沒有的 Accept 內(nèi)容,可以手動(dòng)設(shè)置 accepts 屬性,使用 鍵值對(duì) 存儲(chǔ),然后再設(shè)置 dataType 屬性為剛剛自定義的鍵。
$.ajax({ accepts: { xxx: "application/xxx" }, dataType: "xxx", type: "get", success: function (data) { } });
當(dāng)然還可以直接設(shè)置 headers 屬性,直接寫 Accept 的內(nèi)容是什么。
$.ajax({ headers: { Accept: "application/json; charset=utf-8" }, type: "get", success: function (data) { } });
以上所述是小編給大家介紹的jQuery在header中設(shè)置請(qǐng)求信息的方法,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)億速云網(wǎng)站的支持!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。