天天看點

ajax模拟擷取json

  現在工作中我用到擷取資料的方式,基本都是ajax。前台擷取後端的資料後,需要進行處理,然後把他們放進頁面中的相應标簽裡。下面舉一個簡單的例子,來模拟資料的擷取和擺放。

    這裡用ng架構擷取資料然後處理,和用原生js的方式将資料放進頁面中。項目結構:

 (這裡請求資料的時候J就是一個跨域的問題,我們需要将這段代碼,房子伺服器裡去跑,我這裡用的是 xampp 搭建的服務,内含Apache和MySQL,etc)

ajax模拟擷取json
ajax模拟擷取json
ajax模拟擷取json
項目結構如上所示,請求的是同一個php資料,PHP裡面是有一個json。

{
    "sites": [
        {
            "Name": "阿逗部落格",
            "Url": "http://www.cnblogs.com/adouwt/",
            "Country": "CN"
        },
        {
            "Name": "Google",
            "Url": "www.google.com",
            "Country": "USA"
        },
        {
            "Name": "Facebook",
            "Url": "www.facebook.com",
            "Country": "USA"
        },
        {
            "Name": "微網誌",
            "Url": "www.weibo.com",
            "Country": "CN"
        }
    ]
}      

現在來擷取這個資料:

ng架構:

ajax模拟擷取json

原生js:

ajax模拟擷取json

倆個都可以完成資料擺放操作,顯示如下:

ajax模拟擷取json
ajax模拟擷取json

注意:在用ajax獲得的result是一個字元串,像這樣,

ajax模拟擷取json

是以 JSON.parse(result)--->object。

補充:

 jq 跨域get 到線上的資料

$.getJSON( "https://easy-mock.com/mock/5a2b8513158e7b7003281adb/online/online", function( data ) {

  console.log(data)

});

每日一句:Victory isn't defined by wins or losses. It is defined by effort. If you can truthfully say,"I did the best I could, I gave everything I had"; then you're a winner.--Wolfgang Schadler

翻譯:勝利不是用赢輸定義的,而是用努力定義的。如果你能如實地說,“我盡了我所能,我付出了所有”,那麼你就是一個勝利者。——沃爾夫岡·謝德勒