呼叫後端介面 / 筋斗雲規範

天笑發表於2017-02-05

呼叫真實介面

在後端介面開發好後,我們可去掉對這個介面的模擬,直接遠端呼叫服務端介面。這需要配置好後端介面的地址。

我們用php寫一個簡單的符合筋斗雲介面規範的後端實現,通過名為"ac"的URL參數列示介面名,在server目錄中建立檔案api.php如下:

<?php

@$ac = $_GET['ac'];
if ($ac == 'hello') {
    $what = "jdcloud @ " . time();
    echo json_encode([0, $what]);
}
else {
    echo json_encode([1, "bad ac"]);
}

配置好php的呼叫環境後,訪問

http://localhost/myproject/api.php?ac=hello

輸出類似這樣(根據時間動態變化):

[0,"jdcloud @ 1483526151"]

回到前端,我們在app.js中設定服務端介面地址:

    $.extend(MUI.options, {
        serverUrl: "api.php",
        serverUrlAc: "ac"
    });

serverUrl選項設定了服務端的URL地址,因為我們將"api.php"放在與"index.html"同一目錄下,所以直接用相對路徑就可以了。serverUrlAc選項定義了介面名對應的URL引數名稱,即?ac={介面名}. 在mockdata.js中去掉對"hello"介面的模擬,重新整理應用就可以看到呼叫後端的效果了。

如果前後端不在同一臺伺服器上,則要將URL寫完整,如

serverUrl: "http://myserver/myproject/api.php";

注意:後端應設定好允許跨域請求。這裡不做詳述。

以上講述的是符合筋斗雲介面規範的介面呼叫設定,如果不符合該規範,請閱讀下一節“介面適配”。

相關文章