Apsara Clouder專項技能認證:實現調用API接口


一.API 簡介

1.API 的概念

API(Application Programming Interface應用程序編程接口)是一些預定義的函數,目的是提供應用程序與開發人員基於某軟件或硬件得以訪問一組例程的能力,而又無需訪問源碼或理解內部工作機制的細節

2.API 的特點

  • API 是一個明確定義的接口,可以為其他軟件提供特定服務
  • API可以小道只包含一個單獨的函數,亦可以達到包含數以百計的類,方法,全局函數,數據類型,枚舉類型和常量
  • API的實現可以是私有的,亦可以是開源的

3.API 的分類

  • 面向對象語言的 API 
  • 庫與框架的 API
  • API 與協議
  • API 與設備接口
  • Web API

4.使用 api 的原因

  • 快速擴展功能
  • 避免"造輪子",提高開發效率
  • 降低模塊之間的耦合度

二.api 的請求與認證

1.web api 協議及 http 請求

1.1 web api 一般采用 http 作為底層協議,http 請求機制如下:

客戶端向服務器發送一個請求,服務器給客戶端一個響應,告訴客戶端是否可以完成它的請求的工作

1.2 http 請求包含的內容

  • 客戶端:url(api 請求地址),請求方式,headers(請求頭),body(請求體)
  • headers請求頭:提供請求的元信息,是一個簡短的項目列表,其中有客戶端發送請求的時間和請求主體的大小,身份認證等信息
  • body 請求體:包含客戶端發送給服務器的數據

2.api 請求方式

  • get:請求服務器獲取一個資源
  • post:請求服務器創建一個資源
  • put:請求服務器更新或者編輯一個資源
  • delete:請求服務器刪除一個資源

3.狀態返回碼

處理成功返回2xx

  • 200 ok-get:服務器成功返回用戶請求的數據
  • 201 created-post/put/patch:用戶創建或修改數據成功
  • 202 accepted-* 表示一個請求已經進入后台排隊(異步任務)
  • 204 no content-delete 用戶刪除數據成功

服務端錯誤碼5xx

  • 500 internal Error :api 網關內部錯誤,建議重試
  • 500 Failed to invoke backend Service:api底層服務錯誤
  • 503 service unavaliable:服務不可用
  • 504 async service:后端服務超時

業務報錯4xx:一般為參數錯誤,簽名錯誤,請求方式錯誤或者流控限制

4.api 數據格式

  • json 格式
  • 對象-鍵值對,數組-[]

5.api 身份認證及簽名認證

5.1簡單身份認證:appcode 

使用方法:請求 headers 中添加 Authorization 字段,格式 Authorization:APPCODE+半角空格+appcode 值

5.2簽名認證:appkey&appsecret

三.api 調試及調用

1.api 調試

阿里雲 api 市場提供在線調試功能

2.api 調用步驟

獲取 api 文檔--創建應用--獲取授權--調用 api

3.調用 api

調用 api 三個基礎條件:

  • api
  • 應用 app
  • api 和 app 的權限關系

4.api 調用注意事項

  • 每個賬號下 APP 的個數上限為10個,app 名稱應用為賬號下唯一
  • 調用 api 的流控限制為,單個 ip,qps 不超過100
  • 你有權操作購買的 api 與 app 的授權和解除授權.由服務提供方授權給你的 app 的api,你無權操作解除授權
  • 你的請求需要包含簽名信息

 

成果展示

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM