如何在ajax请求中设置RequestHeader
现在ajax应用已经相当广泛了,有很多不错的ajax框架可供使用。ajax是一个异步请求,也主要是一种客户端的脚本行为。那么,如何在请求之前为请求添加特殊的一些头部信息呢?
下面是一个简单的例子,我用jquery编写,它的ajax函数中,有一个beforeSend方法,这个方法接受一个参数,就代表了发起异步请求的XMLHttpRequest对象,我们可以用该对象的setRequestHeader方法实现我们的目的
C
<%@ 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="测试" id="test" />
</form>
</body>
</html>
其他的一些方法
JavaScript
$.ajax({
//请求类型,这里为POST
type: 'POST',
//你要请求的api的URL
url: url ,
//是否使用缓存
cache:false,
//数据类型,这里我用的是json
dataType: "json",
//必要的时候需要用JSON.stringify() 将JSON对象转换成字符串
data: JSON.strigify({key:value}), //data: {key:value},
//添加额外的请求头
headers : {'Access-Control-Allow-Origin':'*'},
//请求成功的回调函数
success: function(data){
//函数参数 "data" 为请求成功服务端返回的数据
},
});
$.ajax({
url: '/path/to/service',
method: 'GET | POST | PUT | DELETE',
headers: {
'Authorization': 'Bearer <jwt token>',
'some-other-header': 'some value'
}
})
.done(function(data){...})
.fail(function(jqXHR){...})
.always(function(){...})
码字很辛苦,转载请注明来自朱一兵的博客的《如何在ajax请求中设置RequestHeader》
2016-05-18
学习文章
评论