很可惜 T 。T 您現(xiàn)在還不是作者身份,不能自主發(fā)稿哦~
如有投稿需求,請把文章發(fā)送到郵箱tougao@appcpx.com,一經(jīng)錄用會有專人和您聯(lián)系
咨詢?nèi)绾纬蔀榇河鹱髡哒埪?lián)系:鳥哥筆記小羽毛(ngbjxym)
產(chǎn)品經(jīng)理可能需要了解第2個技術(shù)知識點:什么是API接口?接口有那幾部分組成?怎么通過接口定位是前端bug還是后端bug?
1. 接口是什么
2. 接口地址組成部分
3. 接口請求方式
4. 接口返回內(nèi)容
5. 接口文檔規(guī)范
6. 如何通過接口判斷問題是后端還是前端造成的
說到開發(fā)平臺就一定離不開接口,作為PM,我們不需要對接口了解的特別細。只需要知道接口是什么,有什么用,有哪些要素就行。
1. 接口是什么
(1) 硬件接口
生活中我們經(jīng)常會接觸接口,最常見的就是HDMI接口和USB接口,而且我們知道接入某個接口就能實現(xiàn)某種功能。
例如筆記本電腦可以通過HDMI接口連接電視,將畫面同步顯示到電視上;Switch等游戲設(shè)備也可以通過HDMI接口連接電視,實現(xiàn)在電視上玩游戲。
大多數(shù)人并不需要知道HDMI接口是怎么實現(xiàn)的,只需要接入之后能干什么就行。(HDMI是一種高清視頻接口,可用來傳輸圖像信號和音頻信號。)
(2) 程序接口api(application program interface)
其實從實際意義上講程序的接口也和硬件一樣,將內(nèi)部實現(xiàn)的功能封裝起來,像一個盒子一樣只留出一個口子,人們接入這個口子就能使用這個功能。
調(diào)用的人可以很方便使用這些功能,并且可以不需要知道這些功能的具體實現(xiàn)過程,接口API就是按照作者規(guī)定的流程去調(diào)用這些功能。
實際開發(fā)中,當前端和后端有數(shù)據(jù)交互時,前端人員都會直接向后端詢問接口寫好了沒,而不會問他具體的怎么實現(xiàn)的。
【舉個例子:點餐吃飯】
我們到商場店里吃飯,現(xiàn)在基本上都是掃碼點餐;首先掃描二維碼進入頁面,輸入就餐人數(shù),然后劈里啪啦一頓點餐并提交訂單。點完后,服務(wù)員會跟你核對菜單,然后同步到后廚,最后我們就坐等上菜。
例子中的掃碼點餐過程就可以看成是API接口的工作過程,一個點餐的API接口,通過選中菜品(輸入?yún)?shù)),最后服務(wù)員上的一道道菜(輸出數(shù)據(jù)),這過程就是點餐API接口的作用。
來吃飯的顧客是接口的調(diào)用者,接口的提供者就是商家。大多數(shù)接口一定要有輸入和輸出,但是嚴格意義上不是這樣的,沒有輸入也有輸出。
接口是數(shù)據(jù)傳遞是一種表現(xiàn)。
【再舉個超簡單的例子:點燈開發(fā)】
接口的請求可以理解為接口就是一個電燈的開關(guān),它在接口里面給你提供了一個參數(shù),參數(shù)的值一個是 “開”、另一個是“關(guān)”,分別對應(yīng)“燈亮”、“燈滅”。
通過這兩個例子,想必大家對接口的概念有所理解了吧,接下來我們來看看接口有那幾部分構(gòu)成的。
2. 接口地址組成部分
接口地址由請求協(xié)議、IP地址、端口、接口名稱、參數(shù)組成。
(1) 請求協(xié)議
http:普通的http請求;
https:加密的http請求,傳輸數(shù)據(jù)更加安全;
ftp:文件傳輸協(xié)議,主要用來傳輸文件。
(2) 請求IP
就是指提供接口的系統(tǒng)所部署的服務(wù)器地址,通常用映射IP的域名來代替;
(3) 端口
如果不填端口,默認是80,否則需要填寫端口號;
(4) 接口名稱
好的接口命名能讓開發(fā)者便于閱讀和理解,如 “news/add” 和 “news/update”,一看就知道新聞添加和新聞信息編輯的接口。
(5) 接口參數(shù)/參數(shù)值
參數(shù)在接口路徑后,用“?”來表示路徑地址結(jié)束,后面跟著的都是參數(shù),用“&”來區(qū)分參數(shù)個數(shù)(GET請求傳參方式)。
3. 接口請求方式
一般采用的是HTTP協(xié)議的POST和GET請求;GET請求方式參數(shù)通常拼接在接口地址后面;
而POST請求則不會拼接在后面,是保證了數(shù)據(jù)的安全性;
4. 接口返回內(nèi)容
將參數(shù)傳過去之后,后端返回給前端一般用JSON格式,如下所示:
(1) CODE狀態(tài)碼
code返回狀態(tài)碼,通常是在開發(fā)按照"#1000~1999 區(qū)間表示參數(shù)錯誤、#2000~2999 區(qū)間表示用戶錯誤、#3000~3999 區(qū)間表示接口異常"等規(guī)則。(規(guī)則僅供參考) 例子如下所示:
(2) Message信息
Message字段相對理解比較簡單,就是發(fā)生錯誤時,如何友好的進行提示。一般設(shè)計時和code狀態(tài)碼一一對應(yīng),如上圖所示。
(3) data信息
返回的重要結(jié)果數(shù)據(jù)之一,下圖是完整的接口返回數(shù)據(jù)。
5. 接口文檔規(guī)范
項目開發(fā)需要前端和后端共同完成的,接口文檔通常由后端定義并編寫接口文檔,然后再前后端聯(lián)調(diào)的時候,根據(jù)接口文檔進行數(shù)據(jù)交互。
接口文檔的另一個重要作用就是規(guī)范,項目開發(fā)過程中前后端工程師有一個統(tǒng)一的文件進行溝通交流開發(fā),項目維護中或者項目人員更迭的時候,方便后期人員查看、維護。
接口文檔的接口分為五部分:請求方法(POST、GET)、接口地址、請求參數(shù)、返回參數(shù)、返回結(jié)果示例。以銀行卡四元素校驗為例(https://www.juhe.cn/docs/api/id/213):
6. 如何通過接口判斷問題是后端還是前端造成的
PM:"前端,幫我看下這塊信息為什么是空白的。"
前端:"好勒,馬上看。"
2000 years later
前端:"我代碼沒問題呀,參數(shù)也傳了,你問下后端。"
PM:"后端,幫我看下這里數(shù)據(jù)為啥沒有。"
后端:"我接口沒問題呀,等等,這數(shù)據(jù)本來就是空的,快找人新增去呀。"
后端一臉嫌棄。
很多時候,當我們發(fā)現(xiàn)問題的時候,第一印象就是找開發(fā)人員詢問原因,很多人基本不會去先判斷這問題是屬于前端的還是后端的,導(dǎo)致溝通成本變大。
通過上面的介紹,我們可以通過接口的返回數(shù)據(jù)中的狀態(tài)碼,來初步判斷問題屬于哪一方?,F(xiàn)在介紹一下這么通過瀏覽器查看接口數(shù)據(jù)。
首先打開任意瀏覽器(建議使用谷歌),鼠標右擊后點擊“查看”或者直接按“F12鍵”打開發(fā)者工具,然后選擇"network"—>“XHR”,就會看到很多接口請求,按需找到請求接口,查看對應(yīng)返回數(shù)據(jù)即可。
大多數(shù)情況下,可以通過接口狀態(tài)碼和消息提示去判斷是后端還是前端的問題。
但是有些問題比較隱蔽,即使狀態(tài)碼返回為成功的碼,但問題依舊存在,這種情況很有可能是后臺某細節(jié)錯誤。
今天內(nèi)容到此結(jié)束了,點擊下方【閱讀原文】查看更多技術(shù)知識點。
熱門文章
本文為作者獨立觀點,不代表鳥哥筆記立場,未經(jīng)允許不得轉(zhuǎn)載。
《鳥哥筆記版權(quán)及免責(zé)申明》 如對文章、圖片、字體等版權(quán)有疑問,請點擊 反饋舉報
我們致力于提供一個高質(zhì)量內(nèi)容的交流平臺。為落實國家互聯(lián)網(wǎng)信息辦公室“依法管網(wǎng)、依法辦網(wǎng)、依法上網(wǎng)”的要求,為完善跟帖評論自律管理,為了保護用戶創(chuàng)造的內(nèi)容、維護開放、真實、專業(yè)的平臺氛圍,我們團隊將依據(jù)本公約中的條款對注冊用戶和發(fā)布在本平臺的內(nèi)容進行管理。平臺鼓勵用戶創(chuàng)作、發(fā)布優(yōu)質(zhì)內(nèi)容,同時也將采取必要措施管理違法、侵權(quán)或有其他不良影響的網(wǎng)絡(luò)信息。
一、根據(jù)《網(wǎng)絡(luò)信息內(nèi)容生態(tài)治理規(guī)定》《中華人民共和國未成年人保護法》等法律法規(guī),對以下違法、不良信息或存在危害的行為進行處理。
1. 違反法律法規(guī)的信息,主要表現(xiàn)為:
1)反對憲法所確定的基本原則;
2)危害國家安全,泄露國家秘密,顛覆國家政權(quán),破壞國家統(tǒng)一,損害國家榮譽和利益;
3)侮辱、濫用英烈形象,歪曲、丑化、褻瀆、否定英雄烈士事跡和精神,以侮辱、誹謗或者其他方式侵害英雄烈士的姓名、肖像、名譽、榮譽;
4)宣揚恐怖主義、極端主義或者煽動實施恐怖活動、極端主義活動;
5)煽動民族仇恨、民族歧視,破壞民族團結(jié);
6)破壞國家宗教政策,宣揚邪教和封建迷信;
7)散布謠言,擾亂社會秩序,破壞社會穩(wěn)定;
8)宣揚淫穢、色情、賭博、暴力、兇殺、恐怖或者教唆犯罪;
9)煽動非法集會、結(jié)社、游行、示威、聚眾擾亂社會秩序;
10)侮辱或者誹謗他人,侵害他人名譽、隱私和其他合法權(quán)益;
11)通過網(wǎng)絡(luò)以文字、圖片、音視頻等形式,對未成年人實施侮辱、誹謗、威脅或者惡意損害未成年人形象進行網(wǎng)絡(luò)欺凌的;
12)危害未成年人身心健康的;
13)含有法律、行政法規(guī)禁止的其他內(nèi)容;
2. 不友善:不尊重用戶及其所貢獻內(nèi)容的信息或行為。主要表現(xiàn)為:
1)輕蔑:貶低、輕視他人及其勞動成果;
2)誹謗:捏造、散布虛假事實,損害他人名譽;
3)嘲諷:以比喻、夸張、侮辱性的手法對他人或其行為進行揭露或描述,以此來激怒他人;
4)挑釁:以不友好的方式激怒他人,意圖使對方對自己的言論作出回應(yīng),蓄意制造事端;
5)羞辱:貶低他人的能力、行為、生理或身份特征,讓對方難堪;
6)謾罵:以不文明的語言對他人進行負面評價;
7)歧視:煽動人群歧視、地域歧視等,針對他人的民族、種族、宗教、性取向、性別、年齡、地域、生理特征等身份或者歸類的攻擊;
8)威脅:許諾以不良的后果來迫使他人服從自己的意志;
3. 發(fā)布垃圾廣告信息:以推廣曝光為目的,發(fā)布影響用戶體驗、擾亂本網(wǎng)站秩序的內(nèi)容,或進行相關(guān)行為。主要表現(xiàn)為:
1)多次發(fā)布包含售賣產(chǎn)品、提供服務(wù)、宣傳推廣內(nèi)容的垃圾廣告。包括但不限于以下幾種形式:
2)單個帳號多次發(fā)布包含垃圾廣告的內(nèi)容;
3)多個廣告帳號互相配合發(fā)布、傳播包含垃圾廣告的內(nèi)容;
4)多次發(fā)布包含欺騙性外鏈的內(nèi)容,如未注明的淘寶客鏈接、跳轉(zhuǎn)網(wǎng)站等,誘騙用戶點擊鏈接
5)發(fā)布大量包含推廣鏈接、產(chǎn)品、品牌等內(nèi)容獲取搜索引擎中的不正當曝光;
6)購買或出售帳號之間虛假地互動,發(fā)布干擾網(wǎng)站秩序的推廣內(nèi)容及相關(guān)交易。
7)發(fā)布包含欺騙性的惡意營銷內(nèi)容,如通過偽造經(jīng)歷、冒充他人等方式進行惡意營銷;
8)使用特殊符號、圖片等方式規(guī)避垃圾廣告內(nèi)容審核的廣告內(nèi)容。
4. 色情低俗信息,主要表現(xiàn)為:
1)包含自己或他人性經(jīng)驗的細節(jié)描述或露骨的感受描述;
2)涉及色情段子、兩性笑話的低俗內(nèi)容;
3)配圖、頭圖中包含庸俗或挑逗性圖片的內(nèi)容;
4)帶有性暗示、性挑逗等易使人產(chǎn)生性聯(lián)想;
5)展現(xiàn)血腥、驚悚、殘忍等致人身心不適;
6)炒作緋聞、丑聞、劣跡等;
7)宣揚低俗、庸俗、媚俗內(nèi)容。
5. 不實信息,主要表現(xiàn)為:
1)可能存在事實性錯誤或者造謠等內(nèi)容;
2)存在事實夸大、偽造虛假經(jīng)歷等誤導(dǎo)他人的內(nèi)容;
3)偽造身份、冒充他人,通過頭像、用戶名等個人信息暗示自己具有特定身份,或與特定機構(gòu)或個人存在關(guān)聯(lián)。
6. 傳播封建迷信,主要表現(xiàn)為:
1)找人算命、測字、占卜、解夢、化解厄運、使用迷信方式治??;
2)求推薦算命看相大師;
3)針對具體風(fēng)水等問題進行求助或咨詢;
4)問自己或他人的八字、六爻、星盤、手相、面相、五行缺失,包括通過占卜方法問婚姻、前程、運勢,東西寵物丟了能不能找回、取名改名等;
7. 文章標題黨,主要表現(xiàn)為:
1)以各種夸張、獵奇、不合常理的表現(xiàn)手法等行為來誘導(dǎo)用戶;
2)內(nèi)容與標題之間存在嚴重不實或者原意扭曲;
3)使用夸張標題,內(nèi)容與標題嚴重不符的。
8.「飯圈」亂象行為,主要表現(xiàn)為:
1)誘導(dǎo)未成年人應(yīng)援集資、高額消費、投票打榜
2)粉絲互撕謾罵、拉踩引戰(zhàn)、造謠攻擊、人肉搜索、侵犯隱私
3)鼓動「飯圈」粉絲攀比炫富、奢靡享樂等行為
4)以號召粉絲、雇用網(wǎng)絡(luò)水軍、「養(yǎng)號」形式刷量控評等行為
5)通過「蹭熱點」、制造話題等形式干擾輿論,影響傳播秩序
9. 其他危害行為或內(nèi)容,主要表現(xiàn)為:
1)可能引發(fā)未成年人模仿不安全行為和違反社會公德行為、誘導(dǎo)未成年人不良嗜好影響未成年人身心健康的;
2)不當評述自然災(zāi)害、重大事故等災(zāi)難的;
3)美化、粉飾侵略戰(zhàn)爭行為的;
4)法律、行政法規(guī)禁止,或可能對網(wǎng)絡(luò)生態(tài)造成不良影響的其他內(nèi)容。
二、違規(guī)處罰
本網(wǎng)站通過主動發(fā)現(xiàn)和接受用戶舉報兩種方式收集違規(guī)行為信息。所有有意的降低內(nèi)容質(zhì)量、傷害平臺氛圍及欺凌未成年人或危害未成年人身心健康的行為都是不能容忍的。
當一個用戶發(fā)布違規(guī)內(nèi)容時,本網(wǎng)站將依據(jù)相關(guān)用戶違規(guī)情節(jié)嚴重程度,對帳號進行禁言 1 天、7 天、15 天直至永久禁言或封停賬號的處罰。當涉及欺凌未成年人、危害未成年人身心健康、通過作弊手段注冊、使用帳號,或者濫用多個帳號發(fā)布違規(guī)內(nèi)容時,本網(wǎng)站將加重處罰。
三、申訴
隨著平臺管理經(jīng)驗的不斷豐富,本網(wǎng)站出于維護本網(wǎng)站氛圍和秩序的目的,將不斷完善本公約。
如果本網(wǎng)站用戶對本網(wǎng)站基于本公約規(guī)定做出的處理有異議,可以通過「建議反饋」功能向本網(wǎng)站進行反饋。
(規(guī)則的最終解釋權(quán)歸屬本網(wǎng)站所有)