1024程序員新技能:酷!零技術(shù)基礎(chǔ),一天模仿一套API接口
時(shí)間:2023-04-24 12:09:02 | 來源:網(wǎng)站運(yùn)營
時(shí)間:2023-04-24 12:09:02 來源:網(wǎng)站運(yùn)營
1024程序員新技能:酷!零技術(shù)基礎(chǔ),一天模仿一套API接口:
前言
曾經(jīng)在建站的年代,經(jīng)常需要參考、模仿和復(fù)制別的網(wǎng)站,為了降低網(wǎng)站開發(fā)的技術(shù)難度和加快網(wǎng)站上線的速度,有很多可以在線編輯、設(shè)計(jì)和“即見即所得”的工具,可以讓技術(shù)小白快速搭建屬于自己的網(wǎng)站。
如今,針對(duì)小程序、APP、后臺(tái)系統(tǒng)、API接口,也有同樣的復(fù)制、模仿、復(fù)刻的需求。那么對(duì)于API接口,有沒快速模仿的解決方案呢?
本文就來分享快速模仿、搭建和開放API接口的方案和工具。
適用場景
這里重點(diǎn)是提供和分享可以加快開發(fā)API接口的速度,和降低API接口開發(fā)的技術(shù)難度,幾乎可以做到高效、低技術(shù)門檻。
適用的場景包括但不限于:
1、自己原來有一套內(nèi)部的API接口,現(xiàn)在需要開放部分接口給外部客戶使用
2、需要對(duì)接上游供應(yīng)商的接口,然后開放提供給下游用戶調(diào)用
3、作為平臺(tái)方,需要接入聚合多個(gè)不同渠道的API接口
用到的工具
本次用的工具有:
1、免費(fèi)的YesDev研發(fā)管理工具的接口文檔(
https://www.yesdev.cn/)
2、PhalApi開源接口框架或接口大師(
http://pro.phalapi.net/)
模仿例子:抖店開放平臺(tái)-API模仿
作為例子,假設(shè)我們需要集成抖店開放平臺(tái)的店鋪API,可以看到有7個(gè)接口。
7個(gè)接口分別是:
API英文名稱 API簡介 所屬權(quán)限包
/shop/brandList 獲取店鋪的已授權(quán)品牌列表
/address/create 店鋪創(chuàng)建售后地址接口
/address/update 店鋪修改售后地址接口
/address/list 售后地址列表接口
/member/searchList 會(huì)員信息列表查詢
/antispam/userLogin 商戶登陸風(fēng)險(xiǎn)檢查
/shop/getShopCategory 獲取店鋪后臺(tái)供商家發(fā)布商品的類目
模仿API接口的操作步驟
首先,免費(fèi)注冊和登錄YesDev后,進(jìn)入工作臺(tái)-接口文檔,創(chuàng)建一個(gè)新的接口項(xiàng)目。
接口項(xiàng)目名稱:抖店API接口模仿示例
接口域名:
https://openapi-fxg.jinritemai.com然后,開始復(fù)制抖店的第一個(gè)API接口。待復(fù)制的API接口是:API文檔>店鋪API>/shop/brandList
把以下對(duì)應(yīng)的接口信息,復(fù)制到Y(jié)esDev的接口文檔,包括:
- 接口路徑
- 接口請(qǐng)求方式
- 接口功能描述
- 接口公共參數(shù)(在YesDev支持公共配置)
- 接口輸入?yún)?shù)(支持 JSON 快速識(shí)別和提?。?/b>
- 接口響應(yīng)結(jié)果/參數(shù)(支持 JSON 快速識(shí)別和提取)
- 接口響應(yīng)示例
這里不需要技術(shù),但需要一點(diǎn)點(diǎn)耐心進(jìn)行復(fù)制粘貼的表單輸入和編輯。
比較贊的是,接口參數(shù)和接口結(jié)果,支持 JSON 的識(shí)別和自動(dòng)提取,可以節(jié)省很多編輯時(shí)間。例如復(fù)制:
自動(dòng)識(shí)別如下:
如果有公共參數(shù),可以在接口項(xiàng)目進(jìn)行統(tǒng)一的配置。
平均操作下來,每個(gè)API接口,不需要什么技術(shù),大概花3分鐘就可以手動(dòng)完成一個(gè)API接口的復(fù)制模仿。7個(gè)接口,大概是21分鐘。
API接口文檔管理
通過“復(fù)制-粘貼”,以及表單提交,和在線編輯,就可以對(duì)待復(fù)制的7個(gè)API接口進(jìn)行接口文檔的管理。
管理界面的效果如下:
分享API接口文檔
前臺(tái)的在線API接口文檔瀏覽效果如下,這是接口首頁和接口列表頁。你可以分享給你的團(tuán)隊(duì)、客戶和開發(fā)者??梢栽O(shè)置訪問密碼或僅限內(nèi)部查看,也可以公開訪問。
抖店API接口模仿示例 - 在線接口文檔
https://www.yesdev.cn/apidocs-home-44.html查看具體的API接口文檔:
抖店API接口模仿示例 / 抖店 / 店鋪API / 獲取店鋪的已授權(quán)品牌列表
https://www.yesdev.cn/apidocs-detail-70.html截圖效果:
通過在線接口文檔,開發(fā)者可以查看完整的API接口文檔,以及進(jìn)行在線測試,查看接口返回示例等信息。
生成并下載API接口代碼
在YesDev - 工作臺(tái) - 接口文檔 - 選中接口項(xiàng)目 - 生成API源代碼,然后點(diǎn)擊下?lián)舭呀涌谠创a保存到本地。
保存到本地并解壓后,會(huì)得到用PHP編寫的API接口的源代碼。例如:
獨(dú)立部署、二次開發(fā)、和發(fā)布上線你的API接口
如果需要運(yùn)行上面的PHP接口代碼,你可以使用PhalApi開源接口框架。
參考開源框架官網(wǎng):
https://www.phalapi.net/,一鍵安裝后把下載的壓縮包上傳并解壓到根目錄。
新增一個(gè)接口命名空間,執(zhí)行:composer dumpautoload 。
推薦使用接口大師,支持可視化安裝。
使用此方式,也是解壓到根目錄。上傳解壓后,修改 ./composer.json 文件,添加新的接口命名空間。
解壓后會(huì)得到類似這樣的代碼文件:
[src]$ tree ./N45
./N45
├── Api
│ └── C46.php
└── Common
└── Api.php
執(zhí)行composer更新操作:
[phalapi-pro]$ composer dumpautoload
Generating autoload files
Generated autoload files
運(yùn)行后的接口列表:
進(jìn)入到具體的API接口文檔。
如果需要對(duì)API的PHP源代碼進(jìn)行二次修改,可以基于生成的代碼進(jìn)行重新修改和封裝,整合你自己需要的業(yè)務(wù)和邏輯。
API接口自動(dòng)化測試
如果你對(duì)API接口白盒的單元測試感興趣,對(duì)接口項(xiàng)目質(zhì)量感興趣,可以了解自動(dòng)生成API接口測試代碼,和一鍵運(yùn)行自動(dòng)化測試。
自動(dòng)生成單元測試的腳本和運(yùn)行示例,具體參考文檔《phalapi-buildtest命令》:
http://docs.phalapi.net/#/v2.0/shell?id=phalapi-buildtest%e5%91%bd%e4%bb%a4一鍵運(yùn)行自動(dòng)化測試,共148個(gè)測試用例,共347個(gè)斷言,全方位保證API接口的質(zhì)量和穩(wěn)定性,以及發(fā)布質(zhì)量。
開放API接口
以下功能,都是接口大師自動(dòng)根據(jù)代碼實(shí)時(shí)的控制,不需要開發(fā),直接使用,就能快速開放你的API接口。
登錄接口大師的管理后臺(tái):
修改配置文件 ./config/app.php,把原來的:
// 開放接口的命名空間,配置后可提供接口權(quán)限分配,可配置多個(gè) 'open_api_namespaces' => array('App'),
添加新的接口命名空間 N45,改為:
// 開放接口的命名空間,配置后可提供接口權(quán)限分配,可配置多個(gè) 'open_api_namespaces' => array('App', 'N45'),
進(jìn)入管理后臺(tái)后,刷新頁面,就可以對(duì)本次新增的API接口進(jìn)行權(quán)限分配,分配給你的開發(fā)者、應(yīng)用、或某一類角色。
除了可以看到接口的流量統(tǒng)計(jì)和監(jiān)控外,還有很多關(guān)于賬號(hào)管理、應(yīng)用管理等功能。
2021的1024程序員節(jié)日,解鎖開發(fā)API接口的新技能
API接口的開發(fā),是一整套的工作。
傳統(tǒng)的方式是:
手動(dòng)編寫API接口代碼,
手動(dòng)編寫API接口文檔,
手動(dòng)進(jìn)行API接口的調(diào)試。
現(xiàn)代的方式是:
手動(dòng)編寫API接口代碼,
自動(dòng)生成API接口文檔,
手動(dòng)進(jìn)行API接口的調(diào)試。
更高效的方式是:基于YesDev+接口大師這兩個(gè)工具,實(shí)現(xiàn):
自動(dòng)生成API接口代碼、自動(dòng)生成API接口文檔、自動(dòng)進(jìn)行API接口測試。
套用一句話:
“我們不生產(chǎn)API接口,我們只做API接口的搬運(yùn)工?!?/b>
關(guān)鍵詞:模仿,基礎(chǔ),技術(shù),程序,技能