Apsara Clouder专项技能认证:实现调用API接口
一.API 簡(jiǎn)介
1.API 的概念
API(Application Programming Interface應(yīng)用程序編程接口)是一些預(yù)定義的函數(shù),目的是提供應(yīng)用程序與開發(fā)人員基于某軟件或硬件得以訪問一組例程的能力,而又無需訪問源碼或理解內(nèi)部工作機(jī)制的細(xì)節(jié)
2.API 的特點(diǎn)
- API 是一個(gè)明確定義的接口,可以為其他軟件提供特定服務(wù)
- API可以小道只包含一個(gè)單獨(dú)的函數(shù),亦可以達(dá)到包含數(shù)以百計(jì)的類,方法,全局函數(shù),數(shù)據(jù)類型,枚舉類型和常量
- API的實(shí)現(xiàn)可以是私有的,亦可以是開源的
3.API 的分類
- 面向?qū)ο笳Z言的 API?
- 庫與框架的 API
- API 與協(xié)議
- API 與設(shè)備接口
- Web API
4.使用 api 的原因
- 快速擴(kuò)展功能
- 避免"造輪子",提高開發(fā)效率
- 降低模塊之間的耦合度
二.api 的請(qǐng)求與認(rèn)證
1.web api 協(xié)議及 http 請(qǐng)求
1.1 web api 一般采用 http 作為底層協(xié)議,http 請(qǐng)求機(jī)制如下:
客戶端向服務(wù)器發(fā)送一個(gè)請(qǐng)求,服務(wù)器給客戶端一個(gè)響應(yīng),告訴客戶端是否可以完成它的請(qǐng)求的工作
1.2 http 請(qǐng)求包含的內(nèi)容
- 客戶端:url(api 請(qǐng)求地址),請(qǐng)求方式,headers(請(qǐng)求頭),body(請(qǐng)求體)
- headers請(qǐng)求頭:提供請(qǐng)求的元信息,是一個(gè)簡(jiǎn)短的項(xiàng)目列表,其中有客戶端發(fā)送請(qǐng)求的時(shí)間和請(qǐng)求主體的大小,身份認(rèn)證等信息
- body 請(qǐng)求體:包含客戶端發(fā)送給服務(wù)器的數(shù)據(jù)
2.api 請(qǐng)求方式
- get:請(qǐng)求服務(wù)器獲取一個(gè)資源
- post:請(qǐng)求服務(wù)器創(chuàng)建一個(gè)資源
- put:請(qǐng)求服務(wù)器更新或者編輯一個(gè)資源
- delete:請(qǐng)求服務(wù)器刪除一個(gè)資源
3.狀態(tài)返回碼
處理成功返回2xx
- 200 ok-get:服務(wù)器成功返回用戶請(qǐng)求的數(shù)據(jù)
- 201 created-post/put/patch:用戶創(chuàng)建或修改數(shù)據(jù)成功
- 202 accepted-* 表示一個(gè)請(qǐng)求已經(jīng)進(jìn)入后臺(tái)排隊(duì)(異步任務(wù))
- 204 no content-delete 用戶刪除數(shù)據(jù)成功
服務(wù)端錯(cuò)誤碼5xx
- 500 internal Error :api 網(wǎng)關(guān)內(nèi)部錯(cuò)誤,建議重試
- 500 Failed to invoke backend Service:api底層服務(wù)錯(cuò)誤
- 503 service unavaliable:服務(wù)不可用
- 504 async service:后端服務(wù)超時(shí)
業(yè)務(wù)報(bào)錯(cuò)4xx:一般為參數(shù)錯(cuò)誤,簽名錯(cuò)誤,請(qǐng)求方式錯(cuò)誤或者流控限制
4.api 數(shù)據(jù)格式
- json 格式
- 對(duì)象-鍵值對(duì),數(shù)組-[]
5.api 身份認(rèn)證及簽名認(rèn)證
5.1簡(jiǎn)單身份認(rèn)證:appcode?
使用方法:請(qǐng)求 headers 中添加 Authorization 字段,格式 Authorization:APPCODE+半角空格+appcode 值
5.2簽名認(rèn)證:appkey&appsecret
三.api 調(diào)試及調(diào)用
1.api 調(diào)試
阿里云 api 市場(chǎng)提供在線調(diào)試功能
2.api 調(diào)用步驟
獲取 api 文檔--創(chuàng)建應(yīng)用--獲取授權(quán)--調(diào)用 api
3.調(diào)用 api
調(diào)用 api 三個(gè)基礎(chǔ)條件:
- api
- 應(yīng)用 app
- api 和 app 的權(quán)限關(guān)系
4.api 調(diào)用注意事項(xiàng)
- 每個(gè)賬號(hào)下 APP 的個(gè)數(shù)上限為10個(gè),app 名稱應(yīng)用為賬號(hào)下唯一
- 調(diào)用 api 的流控限制為,單個(gè) ip,qps 不超過100
- 你有權(quán)操作購(gòu)買的 api 與 app 的授權(quán)和解除授權(quán).由服務(wù)提供方授權(quán)給你的 app 的api,你無權(quán)操作解除授權(quán)
- 你的請(qǐng)求需要包含簽名信息
?
成果展示
總結(jié)
以上是生活随笔為你收集整理的Apsara Clouder专项技能认证:实现调用API接口的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 全额罚息
- 下一篇: 2017怎么用微信申请信用卡