安卓APP做殼 PHP做服務端 開發APP

2021-09-10 02:19:43 字數 1431 閱讀 7436

客戶端呼叫介面api,服務端處理邏輯返回 結果json,客戶端接收結果作互動處理。

** 做過 api 的人應該了解,其實開發 api 比開發 web 更簡潔,但可能邏輯更複雜,因為 api 其實就是資料輸出,不用呈現頁面,所以也就不存在 

mvc(api 只有 m 和 c),

1、和 web 開發一樣,首先需要一些相關的引數,這些引數,都會由客戶端傳過來,也許是 get 也許是 post,這個需要開發團隊相互之間約定好,

或者制定統一規範。

資料怎麼返給客戶端?

直接輸出的形式,如:json、xml、text 等等。

4、客戶端獲取到你返回的資料後,在客戶端本地和使用者進行互動。

1、單檔案實現多介面的形式有很多種,例如:if..elseif.. 或 switch 或 動態方法 (也就是tp的這種訪問函式體的形式)

2、對於資料的輸出最好用json,json具有相當強大的跨平台性,市場上各大主流程式語言都支援json解析,json正在逐步取代xml,成為網路資料的

通用格式

3、介面安全,一定要增加介面驗證。例如,客戶端和服務端針對不同介面統一做好加密方式,服務端在對於每次介面需要都要進行驗證。以保證防

止介面被惡意重新整理或黑客惡意呼叫,尤其是大型商業應用。

4、對於線上的 api 必須保證所有介面正常且關閉所有的錯誤資訊 => error_reporting(0),在輸出json 時,不能有任何其它輸出,否則,客戶端

將會獲取錯誤的資料資訊,98%直接導致客戶端 crash!

5、開發 api 和 web 有一定的區別,如果是 web 的話,可能**出錯了,不會導致特別嚴重的錯誤,也許只是導致資料寫入和查詢失敗,也許導致 

web 的某個部分錯位或亂碼。但如果是 api,99%的情況都是客戶端直接crash、閃退!

6、做介面開發,不建議使用框架開發,原因概括起來有兩點(其實我有點冒風險的,本人也是 tper 一枚,畢竟這是tp的官網):

客戶端一般對服務端的響應速度有極高要求,因此,使用最原生態的 php完成介面開發,是最高效的,假如用到了框架,還需要載入各種不需要多餘

的檔案,就好比夏天穿了件冬天的衣服。試想,你在玩手機的時候,使用乙個應用隨便乙個操作,等半天才有動靜,你受的了嗎?

就是上面第4點提到的,框架對於web開發,是件很幸福的事,但對於 api 而言,你實在不敢想象它會給你出什麼岔子!最後你將痛苦不堪~~因為很

多框架都是為 web 誕生的(我也很期待有一天能看到專門為開發 api 而生的框架或者擴充套件)

說到這,不得不說扯一下,風靡網際網路的開放平台。其實那些開放平台,所謂的開放,就是給你提供乙個這樣的介面,你根據他們提供的技術文件,

店鋪、商品訊息等等。然後在根據這些訊息,在你的應用裡完成互動。

posted @

2016-03-08 16:37

newman·li 閱讀(

...)

編輯收藏

用php模擬做服務端偵聽埠

參考 socket accept 是服務端接受客戶端請求,一旦有乙個客戶端鏈結上來的話,則這個函式會返回乙個新的socket資源,這個資源是與客戶端通訊的資源。socket accept 是阻塞的,會一直卡在那裡。正常的伺服器,應該是新開乙個子程序來處理請求。socket connect 是鏈結乙個...

用AndServer做安卓手機伺服器

andserver是android平台的web server和web framework。它基於編譯時註解提供了類似springmvc的註解和功能,如果您熟悉springmvc,則可以非常快速地掌握它。andserver是國人yanzhenjie開發部署在手機上的伺服器框架 相關部落格 個人感覺用手...

iOS 客戶端與服務端做時間同步

我們做客戶端的時候,有時會需要對客戶端與伺服器的時間進行同步,比如搶購活動 倒計時等。這時我們要考慮如何準備地與伺服器的時間進行同步,同時防止使用者本地的時間有誤差時導致的問題。描述為了實現以上需求,我們需要 獲取伺服器某一時刻a的時間 記錄獲取到時刻a時的本地時間b 需要用到時間時,獲取當前本地時...