本文目錄一覽:
php如何開發API接口
比如一個自定義函數:function test(){echo ‘hello world’;}就可以叫做 api。api 既可以是單個的函數,也可以是封裝在類里的方法,當然它們也是程序代碼。開發一個 api 的流程可以很簡單,也可以很複雜,視具體的編程任務而決定,並沒有特定的規則。比如,你需要為自己建立一個常用的函數庫,命名為 my.lib.php然後把你自己編寫的自定義函數,全部寫在這個文件裡面,那麼,你就擁有了自己的api。開發的時候,只需要引入 my.lib.php,你就可以調用自己的 api 了。這是一個比較簡單的例子。稍微複雜一點的,你可以把函數封裝在類裡面,方便繼承和重用,還可以根據函數名稱做一些程序設計,這個一句話說不清楚,給一個簡單的例子吧:class mylib{function showmy(){echo ‘這是我的一個類方法’;}}調用的時候,先要實例化類,然後再調用方法。再複雜一點的就是使用類接口,區別就是接口裡面定義的只是方法原型,而你需要通過具體的類來實現接口中的函數,具體請參考 php 手冊
php寫個面向過程的腳本,只需要查查API就可以了,真的有這麼簡單嗎?
對於php的入學者來說,很少接觸api,因此對於如何寫不知所措,其實開發API 比開發WEB 更簡潔,但可能邏輯更複雜,因為API 其實就是數據輸出,不用呈現頁面,所以也就不存在MVC(API 只有M 和C),和WEB 開發一樣,首先需要一些相關的參數,這些參數,都會由客戶端傳過來,也許是GET也許是POST,這個需要開發團隊相互之間約定好,或者制定統一規範。
有了參數,根據應用需求,完成數據處理,例如:任務進度更新、APP內購、一局遊戲結束數據提交等等。數據邏輯處理完之後,返回客戶端所需要用到的相關數據,例如:任務狀態、內購結果、玩家信息等等數據怎麼返給客戶端?直接輸出的形式,如:JSON、XML、TEXT 等等。
接入API接口難嗎?如何接入API接口?
接入API相對來說不難,接入之前您需要去專門的API供應商那裡購買自己需要的API接口,購買之後才能接入相對應的API接口。並將該API接口的代碼嵌入到相應的系統之中即可
PHP 的API接口
使用PHP寫api接口是經常做的,PHP寫好接口後,前台就可以通過鏈接獲取接口提供的數據,而返回的數據一般分為兩種情況,xml和json,在這個過程中,服務器並不知道,請求的來源是什麼,有可能是別人非法調用我們的接口,獲取數據,因此就要使用安全驗證
原理
從圖中可以看得很清楚,前台想要調用接口,需要使用幾個參數生成簽名。
時間戳:當前時間
隨機數:隨機生成的隨機數
口令:前後台開發時,一個雙方都知道的標識,相當於暗號
算法規則:商定好的運算規則,上面三個參數可以利用算法規則生成一個簽名。前台生成一個簽名,當需要訪問接口的時候,把時間戳,隨機數,簽名通過URL傳遞到後台。後台拿到時間戳,隨機數後,通過一樣的算法規則計算出簽名,然後和傳遞過來的簽名進行對比,一樣的話,返回數據。
算法規則
在前後台交互中,算法規則是非常重要的,前後台都要通過算法規則計算出簽名,至於規則怎麼制定,看你怎麼高興怎麼來。
我這個算法規則是
時間戳,隨機數,口令按照首字母大小寫順序排序
然後拼接成字符串
進行sha1加密
再進行MD5加密
轉換成大寫。
原創文章,作者:BEZKQ,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/129594.html