溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

jQuery在header中設(shè)置請(qǐng)求信息的方法

發(fā)布時(shí)間:2020-09-01 01:45:25 來源:腳本之家 閱讀:210 作者:mazhenyu123 欄目:web開發(fā)

 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)站的支持!

向AI問一下細(xì)節(jié)

免責(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)容。

AI