//JQeury实现方式
//1.$.ajax()
function funajax() {
$.ajax({
url: "",//请求路径
type: "post",//请求方式
//data: "name=wo&age=21",//请求参数
data: { "name": "wo", "age": "21" },//请求参数
success: function (data) {//响应成功后的回调函数
console.log(data);
},
error: function () {//如果请求响应出现错误,会执行的回调函数
alert("请求响应失败!");
},
dataType: "json"
//预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,比如XML MIME类型就被识别为XML。在1.4中,JSON就会生成一个JavaScript对象,而script则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。可用值:
//"xml": 返回 XML 文档,可用 jQuery 处理。
//"html": 返回纯文本 HTML 信息;包含的script标签会在插入dom时执行。
//"script": 返回纯文本 JavaScript 代码。不会自动缓存结果。除非设置了"cache"参数。'''注意:'''在远程请求时(不在同一个域下),所有POST请求都将转为GET请求。(因为将使用DOM的script标签来加载)
//"json": 返回 JSON 数据 。
//"jsonp": JSONP 格式。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。
//"text": 返回纯文本字符串
});
}
//2.$.get()
//$.get(url, [data], [callback], [type])
//url:待载入页面的URL地址
//data:待发送 Key/value 参数。
//callback:载入成功时回调函数。
//type:返回内容格式,xml, html, script, json, text, _default。
function funget() {
$.get("text", { name: "wo", age: "21" }, function (data) {
alert( data);
});
}
//3.$.post()
//$.post(url, [data], [callback], [type])
//url:待载入页面的URL地址
//data:待发送 Key/value 参数。
//callback:载入成功时回调函数。
//type:返回内容格式,xml, html, script, json, text, _default。
function funpost() {
$.post("text", { name: "wo", age: "21" }, function (data) {
alert(data);
});
}
两者的区别
• GET在浏览器回退时是无害的,而POST会再次提交请求。
• GET产生的URL地址可以被Bookmark,而POST不可以。
• GET请求会被浏览器主动cache,而POST不会,除非手动设置。
• GET请求只能进行url编码,而POST支持多种编码方式。
• GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。
• GET请求在URL中传送的参数是有长度限制的,而POST么有。
• 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。
• GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏感信息。
• GET参数通过URL传递,POST放在Request body中。
(本标准答案参考自w3schools)