呼叫後端介面
呼叫後端介面是筋斗雲框架提供的兩大核心功能之一。
[任務]
繼續hello頁面的例子,要求每次進入頁面時,不是固定的顯示"hello, world",而是需要根據服務端的返回內容來顯示hello的內容,比如"hello, skys"或是"hello, jdcloud"。
我們先定義一個叫做"hello"的互動介面,由前端發起一個HTTP GET請求,比如:
http://myserver/myproject/api.php?ac=hello
如果呼叫成功,後端返回JSON格式的資料如下:
[0, "jdcloud"]
其中0是返回碼,表示呼叫成功。如果呼叫失敗,可返回:
[99, "對不起,伺服器爆炸了"]
以上就是一個符合筋斗雲介面規範的簡單例子(稱為業務查詢協議-BQP),在成功呼叫時應返回[0, data]
,在呼叫失敗時應返回[非0, 錯誤提示資訊]
。
有了清晰的介面定義,前後端就可以並行開發了。 在前端,我們把頁面稍作修改以動態顯示hello的內容:
<div class="bd">
<p>Hello, <span id="what"></span></p>
</div>
再寫一段邏輯,每當進入頁面時呼叫hello介面並顯示內容,我們選擇onBeforeShow回撥來做這件事:
function initPageHello()
{
var jpage = $(this);
jpage.on("pagebeforeshow", onBeforeShow);
function onBeforeShow()
{
callSvr("hello", api_hello);
}
function api_hello(data)
{
jpage.find("#what").html(data);
}
}
callSvr
是框架提供的一個重要函式,它封裝了ajax呼叫的細節,完整的函式原型為:
callSvr(ac, param?, fn?, postParam?, options?);
其中,ac是呼叫介面名,fn是回撥函式,param和postParam分別是URL引數和POST引數。除ac外,其它引數均可省略。例如
callSvr("hello");
callSvr("hello", {id: 1}); // URL: hello?id=1
callSvr("hello", {id: 1}, api_hello); // function api_hello(data) {}
callSvr("hello", api_hello, {name: "hello"});
回撥函式api_hello僅在成功時被呼叫,引數data是實際資料,即[0, data]
中的data部分,不包括返回碼0。
當呼叫失敗時,框架會統一處理,顯示錯誤資訊,無須操心。
相關文章
- 呼叫後端介面 / 介面適配後端
- 呼叫後端介面 / 模擬資料後端
- 呼叫後端介面 / 筋斗雲規範後端
- 前端呼叫介面成功但後端沒收到請求前端後端
- CouchBase C 客戶端介面呼叫例項客戶端
- SmartRoute之遠端介面呼叫和負載負載
- 在小程式後端中轉獲取介面資料,繞過前端呼叫限制後端前端
- Java-呼叫R語言和呼叫Python(前後端展示)JavaR語言Python後端
- 後端介面對接注意事項後端
- nodejs微信jssdk後端介面NodeJS後端
- 後端介面效能最佳化分析後端
- 機智使用elementUI呼叫一次介面同時上傳圖片和檔案,同時需要攜帶其他引數,實現呼叫後端介面UI後端
- Django-Scrapy生成後端json介面Django後端JSON
- app 呼叫介面APP
- webservice介面呼叫Web
- 當前Activity的onPause執行完後,呼叫Paused介面
- java通過url呼叫遠端介面返回json資料JavaJSON
- 服務端呼叫微信小程式OCR識別介面實現服務端微信小程式
- 不用再等後端的介面啦!這個開源專案花 2 分鐘就能模擬出後端介面後端
- 後端開發:如何寫出可靠的介面後端
- 如何呼叫api介面API
- 前端資料校驗後,後端介面是否需要再次校驗?前端後端
- 使用C#跨PC 遠端呼叫程式並顯示UI介面C#UI
- 介面對前後端和測試的意義後端
- postman使用 Android java後端 介面除錯工具PostmanAndroidJava後端除錯
- 實戰react技術棧+express前後端部落格專案(9)– 前端管理介面發表文章功能+後端對應介面ReactExpress後端前端
- 前後端資料互動(三)——ajax 封裝及呼叫後端封裝
- Http介面呼叫示例教程HTTP
- 實現呼叫API介面API
- 前端的初步----呼叫介面前端
- C++呼叫C介面C++
- 併發序列呼叫介面
- 微信紅包介面呼叫(rails)AI
- 前端如何取消介面呼叫前端
- Java遠端呼叫Java
- 實戰react技術棧+express前後端部落格專案(8)-- 前端管理介面標籤管理+後端對應介面開發ReactExpress後端前端
- 前後端分離架構中的介面設計後端架構
- SpringBoot系列之前後端介面安全技術JWTSpring Boot後端JWT