使用ajax前必須瞭解的知識_ajax

來源:互聯網
上載者:User

ajax的全稱:
asynchronous javascript and xml
(非同步javascript和xml)

ajax不是某種程式設計語言
是一種在無需重新載入整個頁面的情況下能夠更新部分網頁的技術。

一個完整的http請求過程,有7個步驟:
1.建立TCP串連。
2.Web瀏覽器向Web伺服器發送請求命令。
3.Web瀏覽器發送要求標頭資訊。
4.Web伺服器應答。
5.Web伺服器發送應答頭資訊。
6.Web伺服器向瀏覽器發送資料。
7.Web伺服器關閉TCP串連

一個http請求一般由四部分組成:
1.http請求的方法或動作,比如是GET還是POST請求。
2.正在請求的URL。
3.要求標頭,包含一些用戶端環境資訊,身分識別驗證資訊等。
4.請求體,也就是請求本文,請求本文中可以包含客戶的提交的查詢字串資訊,表單資訊等等。

GET:(等冪:就是一個GET請求執行一次和執行一萬次的效果是一樣的)
1.一般用於資訊擷取(查詢),
2.使用URL傳遞參數,
3.對發送的資訊的數量有限制,一般在2000個字元。
4.好處就是可以添加到書籤中收藏頁面。

POST:
1.一般用於修改伺服器上的資源,
2.對所發送的資訊的數量無限制,
3.被嵌入到http的請求體中。

一個http響應一般麼由三部分組成:
1.一個數字和文字組成的狀態代碼,用來顯示請求是成功還是失敗,
2.回應標頭,回應標頭也和要求標頭一樣包含許多有用的資訊,例如服務類型,日期時間,內容類型和長度等,
3.響應體:也就是響應本文

http狀態代碼由32位元字構成,其中首位元字定義了狀態代碼的類型:
1XX:資訊類,表示收到Web瀏覽器請求,正在進一步處理中,
2XX:成功,表示使用者請求被正確接受,理解和處理,例如:200 OK
3XX:重新導向,表示請求沒有成功,客戶必須採取進一步的動作,
4XX:用戶端錯誤,表示用戶端提交請求有錯誤,例如:404 NOT Found,意味著請求中所引用的文檔不存在,
5XX:伺服器錯誤,表示伺服器不能完成對請求的處理,例如:500

JSON的基本概念
1.json:javasscript對象標記法,(javascript Object Notation)
2.json是儲存和交換文本資訊的文法,類似XML。它採用索引值對的方式來組織,易於人們閱讀,同時也易於機器解析和產生。
3.json是獨立於語言的,也就是不管什麼語言,都可以解析json,只需要按照json的規則來就行。

json和xml比較
1.json的長度和xml格式比起來很短小。
2.json讀寫的速度更快
3.json可以使用javascript內建德方法直接進行解析,轉換成javascript對象,非常方便。

json可以是下面類型:
1.數字(整數或浮點數),比如123,1.23.
2.字串(在雙引號中)
3.邏輯值(true或false)
4.數組(在方括弧中)
5.對象(在花括弧中)
6.null

解析json的方法:
1.var jsondata = {“staff”:[{“name”:”紅旗”,”age”:”23”},{“name”:”小紅”,”age”:”13”}]};
var jsonbj = JSON.parse(jsondata);
alert(jsonbj.staff[0].name)

使用jquery實現ajax
1.jQuery.ajax([settings])
2.type:類型,”POST”或”GET”,預設為”GET”。
3.url:發送請求的地址。
4.dataType:預期伺服器返回的資料類型,如果不指定,jquery將自動根據http包MIME資訊來智能判斷,一般我們採用json格式,可以設定為”json”。
5.success:是一個方法,請求成功後的回呼函數,傳入返回後的資料,以及包含嗎成功碼的字串。
6.error:是一個方法,請求失敗 時回調用此函數。傳入XMLHttpRequest對象。

跨域
1.一個網域名稱的地址組成:
協議,子網域名稱,主網域名稱,連接埠號碼中任意一個不相同時,都算作不同域,
2.不同域之間相互請求資源,就算作”跨域”,
3.比如http://www.abc.com/index.html 請求 http://www.egf.com/service.php
4.jsvsscript出於安全方面的考慮,不允許跨域調用其他頁面的對象,什麼是跨域呢,簡單的理解就是因為javascript同源策略的限制,a.com網域名稱下的js無法操作b.com或是c.a.com網域名稱下的對象。
5.例如www.abc.com/index.html調用https://www.abc.com/servic.php(跨域)

處理跨域的方法–代理
1.通過在同網域名稱的web伺服器端建立一個代理
2.北京伺服器(網域名稱:www.beijing.com)
3.上海伺服器(網域名稱:www.shanghai.com)
4.比如北京的web伺服器的後台(www.beijing)

相關文章

Alibaba Cloud 10 Year Anniversary

With You, We are Shaping a Digital World, 2009-2019

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。