背景:因为最近需要获取本地的数据件进行项目测试,需要用到JQuery实现数据文件的读取,但是由于对JQuery内的获取文件方式不太了解,这次趁着机会进行一下总结。因为该总结是本人根据平常的使用及网上的资料的来的。可能有些不足,希望大家能够帮忙指证。
一。$.get();
语法:$.get(url,[data],[callback])
参数说明:url为请求地址。(string类型)
object类型)
function类型)
字符串形式,并不是我们想要的json数据格式。
列:
二。$.post();
语法:$.post(url,[data],[callback],[type])
参数说明:该函数的用法与$.get()的用法比较相像,不同的地方是多了一个type参数(可选)。该参数为请求的数据的类型,该参数可设置为html,xml,php等类型。我们可以根据所需要的数据类型来进行设置,如果我们设置该参数为:json,则数据返回的格式为JSON格式。如果没有设置,则数据格式与$.get()返回的数据格式相同,为字符串形式。(如果type设置为JSON,则要确保数据文件符合JSON数据格式,否则会报错)。
列:
三。$.ajax();
语法:$.ajax(options)
参数说明:$.ajax()是jquery中通用的一个ajax封装,其中options是一个object类型,它指明了本次ajax调用的具体参数,可以根据具体的使用要求,对ajax进行更加精细的操作。
列:
总结:根据上面的列子可以得出,无论是get请求还是post请求,都可以用ajax来表示。
简单说一下get与post的区别:
1.安全性:get是通过http协议的header发送请求,所以会将参数拼接在地址栏中,所以安全性很差;
post是通过http协议的body发送请求,地址栏中并不会出现,所以相对安全;
还有一点,用get方法发送请求会被客户端浏览器缓存,通过查看历史记录可以查看到用户信息,所以非常不安全。
2.传送大小:get只能传送2kb,而post一般不受限制
3.效率:get效率高,post效率低
4.get就是为了从服务器得到数据,而post则是发送数据
四。$.getJSON()
语法:getJSON(url,[data],[callback])
参数说明:
url:string类型, 发送请求地址 。
data :可选参数, 待发送 Key/value 参数 ,同get,post类型的data 。
callback :可选参数,载入成功时回调函数,同get,post类型的callback。
注:getJSON()和get是一样的,都是get请求,这就决定了,发送的data数据量不能太多,否则造成url太长接收失败(getJSON方式是不可能有post方式递交的)。
区别是,getJSON专门请求json数据的,而且getJSON可以实现跨域请求。
什么是JSON?
"myurl?callback=X"这种格式,让程序执行回调函数X。
列:
五。load();
$(selector).load(URL,data,callback);
jQuery load() 方法是简单但强大的 AJAX 方法。load() 方法从服务器加载数据,并把返回的数据放入被选元素中。
参数说明:
必需的 URL 参数规定您希望加载的 URL。
可选的 data 参数规定与请求一同发送的查询字符串键/值对集合。
可选的 callback 参数是 load() 方法完成后所执行的函数名称。
可选的 callback 参数规定当 load() 方法完成后所要允许的回调函数。回调函数可以设置不同的参数:
responseTxt - 包含调用成功时的结果内容
statusTXT - 包含调用的状态
xhr - 包含 XMLHttpRequest 对象