成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Web前端-Ajax基礎(chǔ)技術(shù)(下)

趙連江 / 1081人閱讀

摘要:前端基礎(chǔ)技術(shù)下你要明白是什么,怎么使用,程序是將信息放入公共的服務(wù)器,讓所有網(wǎng)絡(luò)用戶可以通過瀏覽器進(jìn)行訪問。獲取字符串形式的響應(yīng)數(shù)據(jù),獲取形式的響應(yīng)數(shù)據(jù)?;A(chǔ)回顧原理是借助標(biāo)簽發(fā)送跨域請求的技巧。

Web前端-Ajax基礎(chǔ)技術(shù)(下)

你要明白ajax是什么,怎么使用?

ajax,web程序是將信息放入公共的服務(wù)器,讓所有網(wǎng)絡(luò)用戶可以通過瀏覽器進(jìn)行訪問。

瀏覽器發(fā)送請求,獲取服務(wù)器的數(shù)據(jù):

地址欄輸入地址,表單提交,特定的hrefsrc屬性。

// 封裝
function ajax(method, url, params) {

var xhr = new XMLHttpRequest();
xhr.open(method, url);
 
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
params = params || null;
xhr.send(params);
xhr.onreadystatechange=function(){
 if(this.readyState != 4) return
 console.log(this.responseText);
} 

}

ajax("GET", "time.php", "key=value");

function ajax(method, url, params) {

var xhr = new XMLHttpRequest();
if(method === "GET"){
 url += "?" + params;
}
xhr.open(method, url);

var data = null;
if(method === "POST") {
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
data = params
}

xhr.send(data);
xhr.onreadystatechange=function(){
 if(this.readyState != 4) return
 console.log(this.responseText);
} 

}
// 傳對象
function ajax(method, url, params) {

var xhr = new XMLHttpRequest();
if(typeof params === "object"){
 var tempArr = [];
 for(var key in params){
  var value = params[key];
  tempArr.push(key + "=" + value);
 } 
 params = tempArr.join("&");
}

if(method === "GET"){
 url += "?" + params;
}
xhr.open(method, url);

var data = null;
if(method === "POST") {
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
data = params
}

xhr.send(data);
xhr.onreadystatechange=function(){
 if(this.readyState != 4) return
 console.log(this.responseText);
} 

}
function ajax(method, url, params, done) {
method = method.toUpperCase();
var xhr = new XMLHttpRequest();
if(typeof params === "object"){
 var tempArr = [];
 for(var key in params){
  var value = params[key];
  tempArr.push(key + "=" + value);
 } 
 params = tempArr.join("&");
} 

if(method === "GET"){
 url += "?" + params;
}
xhr.open(method, url, false);

var data = null;
if(method === "POST") {
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
data = params
}

xhr.onreadystatechange=function(){
 if(this.readyState != 4) return
 // console.log(this.responseText);
 done(this.responseText);
} 
 
xhr.send(data);
}

var ondone = function(res) {
 console.log(res);
}

回調(diào):

jquery中的ajax

https://www.jquery123.com/category/ajax/
function ajax(method, url, params, done) {
// 統(tǒng)一轉(zhuǎn)換大寫
 method = method.toUpperCase();
// urlencoded
 var pairs = [];
 for(var key in params) {
  pairs.push(key+"="+params[key]);
 }
 var querystring = pairs.join("&");
 var xhr = window.XMLHttpRequest?new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");

xhr.addEventListener("readystatechange",function(){
 
}
}



$.ajax({
 url: "time.php",
 type: "post",
 data: { id: 1, name: "張三" },
 success: function(res) {
  console.log(res);
 }
})
$.ajax({
 url: "json.php",
 type: "get",
 dataType: "json",
 success: function(res) {
  console.log(res)
 }
})

ajax回調(diào)事件:




 
 


 
 




 
 


 
 


.ajaxComplete()
當(dāng)ajax請求完成后注冊一個回調(diào)函數(shù)
.ajaxError()
ajax請求出錯
.ajaxSend()
ajax請求發(fā)送之前綁定一個要執(zhí)行的函數(shù)
.ajaxStart()
在ajax請求剛開始時執(zhí)行一個處理函數(shù)
.ajaxStop()
在ajax請求完成時執(zhí)行一個處理函數(shù)
.ajaxSuccess()
綁定一個函數(shù)當(dāng)ajax請求成功完成時執(zhí)行
jQuery.ajax()
執(zhí)行一個異步的http(ajax)請求
jQuery.ajaxPerfilter()
在每個請求之前被發(fā)送和$.ajax()處理它們前處理
jQuery.ajaxSetup()
為以后要用到的ajax請求設(shè)置默認(rèn)的值
jQuery.ajaxTransport()
創(chuàng)建一個對象
jQuery.get()
使用一個http get請求從服務(wù)器加載數(shù)據(jù)
jQuery.getJSON()
jQuery.getScript()
GET請求從服務(wù)器加載并執(zhí)行一個 JavaScript 文件
jQuery.post() 請求從服務(wù)器加載數(shù)據(jù)

跨域:
同源,域名,協(xié)議,端口,完全相同,同源的相互通過ajax的方式進(jìn)行請求。
不同源地址之間,不能相互發(fā)送ajax請求。

$.get("http://", function(res) {
 console.log(res);
})


 
 AJAX基礎(chǔ)回顧


 

$.get("http://...", function(res){
 console.log(res);
})



var link = document.createElement("link");
link.rel = "stylesheet";
link.href = "http//...";
document.body.appendChild(link);

var script = document.createElement("script");
script.src = "http://...";
document.body.appendChild(script);

jsonp原理�
json是借助script�(biāo)簽發(fā)送跨域請求的技��
原理是在客戶端借助script�(biāo)簽請求服�(wù)端的一個動�(tài)�(wǎng)�,服�(wù)端的這個動�(tài)�(wǎng)頁返回一段帶有函�(shù)�(diào)用的javascript全局函數(shù)�(diào)用的腳本,將原本需要返回給客戶端的�(shù)�(jù)傳遞�(jìn)��

$.ajax({
 url: "http://...",
 dataType: "json",
 success: function(res) {
  console.log(res);
 }
})

�(jié)言

好了,歡迎在留言區(qū)留言,與大家分享你的�(jīng)驗和心得�

感謝你學(xué)�(xí)今天的內(nèi)�,如果你覺得這篇文章對你有幫助的�,也歡迎把它分享給更多的朋友,感��

作者簡�

�(dá)�,理工男,簡書作�&全棧工程師,感性理性兼?zhèn)涞膶懽髡?,個人獨立開發(fā)者,我相信你也可�!閱讀他的文章,會上癮�,幫你成為更好的自己。長按下方二維碼可關(guān)�,歡迎分�,置頂尤��

文章版權(quán)歸作者所有,未經(jīng)允許請勿�(zhuǎn)�,若此文章存在違規(guī)行為,您可以�(lián)系管理員刪除�

�(zhuǎn)載請注明本文地址:http://systransis.cn/yun/1099.html

相關(guān)文章

  • 前端相關(guān)大雜�

    摘要:希望幫助更多的前端愛好者學(xué)�(xí)。前端開�(fā)者指南作者科迪林�,由前端大師傾情贊助。翻譯最佳實踐譯者張捷滬江前端開�(fā)工程師當(dāng)你問起有�(guān)與時,老司�(jī)們首先就會告訴你其實是個沒有網(wǎng)�(luò)請求功能的庫� 前端基礎(chǔ)面試�(JS部分) 前端基礎(chǔ)面試�(JS部分) �(xué)�(xí) React.js 比你想象的要簡單 原文地址:Learning React.js is easier than you think 原文�...

    fuyi501 評論0 收藏0
  • Web前端-Ajax基礎(chǔ)技�(shù)(�)

    摘要:前端基�(chǔ)技�(shù)上是瀏覽器提供一套的用于向服�(wù)器發(fā)出請�,接受服�(wù)端返回的響應(yīng),通過�(diào)�,實�(xiàn)通過代碼控制請求與響�(yīng),實�(xiàn)�(wǎng)�(luò)編程。事件的狀�(tài)信息,從到變�,為請求未初始化,為建立連接成功,為請求已接�,為請求處理�,為請求完成�� Web前端-Ajax基礎(chǔ)技�(shù)(�) ajax是瀏覽器提供一套的api,用于向服�(wù)器發(fā)出請求,接受服務(wù)端返回的響應(yīng),通過javascript�(diào)�,實�(xiàn)通過代碼控制...

    booster 評論0 收藏0
  • 前端2018�(xiàn)在上車還還得及么

    摘要:面�?qū)ο笕筇卣骼^承性多�(tài)性封裝性接�。第五階段封裝一個屬于自己的框架框架封裝基礎(chǔ)事件流冒泡捕獲事件對象事件框架選擇框�。核心模塊和對象全局對象,,,事件驅(qū)動,事件�(fā)射器加密解密,路徑操�,序列化和反序列化文件流操作服務(wù)端與客戶端� 第一階段� HTML+CSS:HTML�(jìn)�、CSS�(jìn)�、div+css布局、HTML+css整站開發(fā)� JavaScript基礎(chǔ):Js基礎(chǔ)教程、js�(nèi)置對...

    stormgens 評論0 收藏0
  • 前端2018�(xiàn)在上車還還得及么

    摘要:面�?qū)ο笕筇卣骼^承性多�(tài)性封裝性接�。第五階段封裝一個屬于自己的框架框架封裝基礎(chǔ)事件流冒泡捕獲事件對象事件框架選擇框�。核心模塊和對象全局對象��,事件驅(qū)�,事件發(fā)射器加密解密,路徑操�,序列化和反序列化文件流操作服務(wù)端與客戶端� 第一階段� HTML+CSS:HTML�(jìn)�、CSS�(jìn)�、div+css布局、HTML+css整站開發(fā)� JavaScript基礎(chǔ):Js基礎(chǔ)教程、js�(nèi)置對...

    mylxsw 評論0 收藏0

�(fā)表評�

0條評�

趙連江

|高級講師

TA的文�

閱讀更多
最新活�
閱讀需要支�1元查�
<