前端學習之ajax

來源:互聯網
上載者:User

標籤:前端學習值ajax

一、什麼是jsonJSON(JavaScript Object Notation, JS 對象標記) 是一種輕量級的資料交換格式。它基於 ECMAScript (w3c制定的js規範)的一個子集,採用完全獨立於程式設計語言的文字格式設定來儲存和表示資料。簡潔和清晰的階層使得 JSON 成為理想的資料交換語言。 易於人閱讀和編寫,同時也易於機器解析和產生,並有效地提升網路傳輸效率。json類型是js類型的子集json對象到json字串是序列化過程,json字串到json對象是還原序列化過程python的json模組,json.dumps(對象),序列化,json.loads(json字串)還原序列化合格的json對象:["one", "two", "three"]{ "one": 1, "two": 2, "three": 3 }{"names": ["張三", "李四"] }[ { "name": "張三"}, {"name": "李四"} ]不合格的json對象{ name: "張三", ‘age‘: 32 }                     // 屬性名稱必須使用雙引號[32, 64, 128, 0xFFF] // 不能使用十六進位值{ "name": "張三", "age": undefined }            // 不能使用undefined{ "name": "張三",  "birthday": new Date(‘Fri, 26 Aug 2011 07:13:10 GMT‘),  "getName":  function() {return this.name;}    // 不能使用函數和日期對象}stringify和parse方法JSON.parse(): 用於將json字串轉化為javascript對象console.log(JSON.parse(‘{"name":"Yuan"}‘));console.log(JSON.parse(‘{name:"Yuan"}‘)) ;   // 錯誤console.log(JSON.parse(‘[12,undefined]‘)) ;   // 錯誤JSON.stringify(): 用於將javascript對象轉化為JSON字串console.log(JSON.stringify({‘name‘:"egon"})) ;二、ajax同步互動:用戶端發出一個請求後,需要等待伺服器響應結束後,才能發出第二個請求;非同步互動:用戶端發出一個請求後,無需等待伺服器響應結束,就可以發出第二個請求。AJAX除了非同步特點外,還有一個就是:瀏覽器頁面局部重新整理;(這一特點給使用者的感受是在不知不覺中完成請求和響應過程)ajax優缺點優點:1、ajax非同步請求2、ajax無需重新整理整個頁面3、因為伺服器響應內容不再是整個頁面,而是頁面中的局部,所以AJAX效能高;缺點:1、AJAX並不適合所有情境,很多時候還是要使用同步互動;2、AJAX雖然提高了使用者體驗,但無形中向伺服器發送的請求次數增多了,導致伺服器壓力增大;3、因為AJAX是在瀏覽器中使用Javascript技術完成的,所以還需要處理瀏覽器安全色性問題;ajax文法$.ajax({               url:"/handle_Ajax/",               type:"POST",               data:{username:"Yuan",password:123},               success:function(data){                   alert(data)               }               })               data: 當前ajax請求要攜帶的資料,是一個json的object對象,ajax方法就會預設地把它編碼成某種格式             (urlencoded:?a=1&b=2)發送給服務端;此外,ajax預設以get方式發送請求。contentType:預設值: "application/x-www-form-urlencoded"。發送資訊至伺服器時內容編碼類別型。             用來指明當前請求的資料編碼格式;urlencoded:?a=1&b=2;如果想以其他方式提交資料,             比如contentType:"application/json",即向伺服器發送一個json字串:               $.ajax("/ajax_get",{                               data:JSON.stringify({                       a:22,                       b:33                   }),                   contentType:"application/json",                   type:"POST",                            });                          //{a: 22, b: 33}             注意:contentType:"application/json"一旦設定,data必須是json字串,不能是json對象
csrf跨站請求偽造$.ajaxSetup({    data: {csrfmiddlewaretoken: ‘{{ csrf_token }}‘ },})


本文出自 “linux技術” 部落格,請務必保留此出處http://haoyonghui.blog.51cto.com/4278020/1960538

前端學習之ajax

相關文章

聯繫我們

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

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

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.