成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

您需要知道的API基礎(chǔ)知識都在這里

譯文 精選
開發(fā) 前端
本文向您介紹了API的基本調(diào)用流程、工作原理、不同的架構(gòu)、類型、開發(fā)工具、以及構(gòu)建實踐。

?譯者 | 陳峻

審校 | 孫淑娟

API是應(yīng)用程序編程接口(Application Programming Interface)的縮寫,能夠起到兩個軟件組件之間的連接器或中介的作用。此類接口往往通過一組明確的協(xié)議,來表示各種原始的請求和響應(yīng)。API文檔可以向開發(fā)人員展示請求和響應(yīng)是如何形成的。簡單而言,API能夠允許兩個應(yīng)用程序彼此之間實現(xiàn)通信。無論我們在手機上查看天氣,還是使用微信,或者在Facebook等應(yīng)用上收發(fā)消息,都會頻繁地使用到API。

有關(guān)API的數(shù)據(jù)

  • 自2007年以來,API的使用量已增加了13倍
  • 得益于API,Google、Facebook和Twitter等知名應(yīng)用,每天都會被調(diào)用約50-100億次
  • Netflix持續(xù)使用API向200臺設(shè)備傳輸數(shù)據(jù)流

API的調(diào)用流程

當我們在使用應(yīng)用程序的某項功能時,通常會在后臺發(fā)生如下情況:

  1. 數(shù)據(jù)請求被發(fā)送到服務(wù)器上
  2. 服務(wù)器對其進行解析,并理解其請求的含義
  3. 服務(wù)器提供必要的響應(yīng)
  4. 響應(yīng)被成功地發(fā)送回設(shè)備

其實,每次在我們要求應(yīng)用程序提供某些特定的服務(wù)響應(yīng)時,這樣的過程都會重復(fù)循環(huán)一次。

不同的API協(xié)議和架構(gòu)

  • REST:在眾多的API架構(gòu)類型中,表述性狀態(tài)轉(zhuǎn)移(Representational State Transfer)往往被廣為采用。REST API的工作原理是以客戶機與服務(wù)器的方式,將API的前端與后端區(qū)分開來。而且它不會存儲任何數(shù)據(jù)或狀態(tài)。
  • SOAP:簡單對象訪問協(xié)議(Simple Object Access Protocol)也被廣泛用于通過XML創(chuàng)建Web API的場景中。它能夠兼容諸如:HTTP、TCP和SMTP等互聯(lián)網(wǎng)常見的通信協(xié)議。由于SOAP易于被擴展,因此開發(fā)者能夠很容易地用它來編寫和添加新的功能。與其他架構(gòu)相比,SOAP具有高度結(jié)構(gòu)化、嚴格可控性、以及具有被明確定義的標準等特性。
  • RPC:遠程過程調(diào)用(remote procedural call)能夠被用來調(diào)用各種可執(zhí)行的操作。它非常適合于發(fā)送各種參數(shù),以及接收各種相應(yīng)的響應(yīng)。

API的類型

根據(jù)訪問級別和使用范圍的不同,API往往可以被分為如下不同的類型。開發(fā)人員可以根據(jù)自己的要求,進行適當?shù)剡x擇。 

A、伙伴API

在此類API中,對于數(shù)據(jù)的訪問,僅限于那些擁有官方許可證的授權(quán)客戶端。也就是說,只有那些與提供API的公司有業(yè)務(wù)關(guān)系的調(diào)用方,才能使用此類API。開發(fā)方對于誰可以訪問這些資源,有著較大的控制權(quán)。

伙伴API的優(yōu)勢:

  • 業(yè)務(wù)方可以把更多的注意力放在公司的核心與發(fā)展上,而無需遷就開發(fā)人員。如果一個開發(fā)人員覺得某個問題難以被解決,則可以由另一個開發(fā)人員去輕松地搞定。這便是伙伴合作給項目帶來的好處。
  • 保留伙伴API政策將有助于集成大量電商軟件的不同解決方案,并使得軟件能夠在瞬息萬變的行業(yè)中保持最新和強相關(guān)。

B、公共API

顧名思義,公共API可供任何外部開發(fā)人員或企業(yè)使用。對于那些與公眾和其他業(yè)務(wù)組織共享應(yīng)用和數(shù)據(jù)的業(yè)務(wù)結(jié)構(gòu)來說,Public API是理想的選擇。

公共API的優(yōu)勢:

公共API不但容易實現(xiàn),而且能夠保證用戶只要有互聯(lián)網(wǎng)連接,就能隨時隨地使用應(yīng)用服務(wù)。

C、內(nèi)部API

內(nèi)部或私有API往往只能讓企業(yè)在其業(yè)務(wù)內(nèi)部連接和訪問數(shù)據(jù)。由于內(nèi)部API的安全性和身份驗證能力相對較弱,因此容易導(dǎo)致數(shù)據(jù)受到安全威脅。對此,開發(fā)者需要逐漸改變它們在安全上的各種部署與安排。

內(nèi)部API的優(yōu)勢:

由于內(nèi)部API能夠?qū)I(yè)務(wù)的不同部分連接起來,以提高開發(fā)過程中的適應(yīng)性和靈活性,因此此類API可以讓開發(fā)人員在較短的時間內(nèi),制定和構(gòu)建新的關(guān)聯(lián)應(yīng)用。

D、復(fù)合API

復(fù)合API通常是兩到多種API的混合體。由于集成了各類API的長處,因此它往往能夠帶來更高的速度、更大的靈活性、以及更好的性能。

復(fù)合API的優(yōu)勢:

復(fù)合API能夠在單個調(diào)出(callout)中執(zhí)行多項操作。而且其所需的數(shù)據(jù)位于調(diào)用序列的末端,而無需解析各種響應(yīng)。因此,它比其他API更受歡迎。

API的工作原理

每個API都是由函數(shù)的調(diào)用來實現(xiàn)的。而函數(shù)調(diào)用的任務(wù)主要是請求軟件去執(zhí)行某些特定的操作和函數(shù)。當用戶啟動API的調(diào)用時,它會通知應(yīng)用程序去啟用API與Web服務(wù)器通信,并執(zhí)行相應(yīng)的任務(wù)。具體而言,每當用戶指示軟件去執(zhí)行某些任務(wù)、或請求某種信息時,API會以應(yīng)用程序和Web服務(wù)器之間的“橋梁”身份去實現(xiàn)。正如前文所說,我們在日常生活中使用到的,諸如:Facebook登錄、PayPal支付、以及Google天氣查詢等,都是API的典型示例。您可以通過鏈接-- https://nordicapis.com/5-examples-of-apis-we-use-in-our-everyday-lives/,了解其更多的應(yīng)用場景。

API開發(fā)的工具

既然API的任務(wù)是簡化和加速軟件的開發(fā),那么正所謂“工欲善其事,必先利其器”,讓我們來看看三種常見的API開發(fā)工具: 

  • Sandbox:作為一種簡單的模擬RESTful API,它主要能夠降低測試過程中第三方API調(diào)用的成本。 
  • Apigee:作為構(gòu)建應(yīng)用連接的理想工具,由Google推出的Apigee可以促進應(yīng)用程序和服務(wù)之間的數(shù)據(jù)傳輸。
  • APIMatic:對于網(wǎng)站的各種API而言,APIMatic以平臺的形式,方便開發(fā)人員更加靈活地維護API的各種更新。同時,它也允許開發(fā)人員將API描述并轉(zhuǎn)換成諸如:WADL、Swagger、RAML、OAI格式、IO文檔、API藍圖、har1.4、以及Postman集合等多種形式。

API的構(gòu)建實踐

API的構(gòu)建實踐,主要體現(xiàn)在如下五個方面:

  1. 安全性:使用基于令牌的身份驗證,是構(gòu)建安全可靠的API的良好實踐。它既保證了安全性,又兼顧了用戶友好性。
  2. 文件:精心編撰的API文檔不但能夠降低項目的開發(fā)成本,而且可以提高應(yīng)用的運行效率和實現(xiàn)時間。應(yīng)用程序開發(fā)人員往往需要通過豐富的API支持文檔,來詳細地了解整個調(diào)用與實現(xiàn)過程。
  3. 節(jié)流:當涉及到需要重定向流量的溢出、防止DoS(拒絕服務(wù))、以及備份各種API時,我們往往需要通過應(yīng)用的節(jié)流,來有效地實現(xiàn)此類目的。
  4. SDK和代碼庫:通過向開發(fā)團隊提供必要的庫資源,我們可以加速開發(fā)的進程。
  5. 重寫HTTP方法:由于一些代理只能支持POST和GET方法,因此我們使用定制的HTTP報頭X-HTTP-Method-Override,能夠允許RESTful API去重寫HTTP的方法。

小結(jié)

從Node.js到PHP與ASP.Net的Web開發(fā),無論是簡單的Python開發(fā)、還是復(fù)雜的Java軟件,API在每一項技術(shù)中都得到了廣泛的使用,都能夠為從開發(fā)到業(yè)務(wù)的協(xié)作鋪平道路。只要我們能夠根據(jù)自己的實際業(yè)務(wù)需求,合理地構(gòu)建或修改API,就能夠填補異構(gòu)數(shù)字技術(shù)之間的鴻溝,提高應(yīng)用服務(wù)的調(diào)用效率,進而為業(yè)務(wù)帶來更豐厚的利潤。

譯者介紹

陳峻 (Julian Chen),51CTO社區(qū)編輯,具有十多年的IT項目實施經(jīng)驗,善于對內(nèi)外部資源與風險實施管控,專注傳播網(wǎng)絡(luò)與信息安全知識與經(jīng)驗。

原文標題:??Everything You Should Know About APIs???,作者:Himanshu Mehra?

責任編輯:華軒 來源: 51CTO
相關(guān)推薦

2020-12-23 09:00:00

開發(fā)Web工具

2021-12-09 08:16:40

JVM參數(shù)系統(tǒng)

2020-06-02 07:00:00

會話安全黑客攻擊

2017-08-29 11:21:03

微軟

2021-12-27 08:00:00

Kubernetes容器安全

2021-05-17 07:04:07

動態(tài)代理面試

2019-09-10 13:38:56

人工智能無人駕駛機器人

2021-07-01 09:00:00

安全數(shù)字化轉(zhuǎn)型滲透

2020-08-12 09:32:31

小米MIUI

2019-11-04 09:07:48

DevOps互聯(lián)網(wǎng)IT

2023-09-11 08:51:23

LinkedList雙向鏈表線程

2021-06-17 13:40:47

區(qū)塊鏈比特幣公有鏈

2021-02-01 08:39:26

JTAG接口Jlink

2020-03-18 18:20:19

區(qū)塊鏈數(shù)字貨幣比特幣

2019-04-24 08:31:43

分布式限流kafka

2019-01-24 08:19:17

云服務(wù)多云云計算

2016-03-01 16:14:32

問問應(yīng)用商店Android Wea

2025-05-16 09:34:10

2018-11-28 10:39:01

5G網(wǎng)絡(luò)運營商

2021-02-23 09:28:48

大數(shù)據(jù)數(shù)據(jù)分析
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 日日摸夜夜爽人人添av | 国产精品久久午夜夜伦鲁鲁 | 成人精品网 | 日本特黄特色aaa大片免费 | 国产精品三级 | 日本一区二区视频 | 免费看黄色片 | 欧美综合精品 | 欧美久久久电影 | 成人av资源在线 | 日韩在线播放第一页 | 少妇性l交大片免费一 | 青青久久久 | 亚洲区一区二 | 最新国产精品 | 国产成人av一区二区三区 | 亚洲毛片在线观看 | 请别相信他免费喜剧电影在线观看 | 综合在线视频 | 国产欧美一区二区三区日本久久久 | 一区二区在线不卡 | 中文字幕一区二区三区不卡 | 国产真实精品久久二三区 | 国产欧美精品一区二区三区 | 91伊人网 | 日韩精品无码一区二区三区 | 一级欧美一级日韩片免费观看 | 欧美久久一区二区三区 | 成人在线精品视频 | 中文字幕一区二区三区四区五区 | 看av网址 | 午夜在线影院 | 国产在线观看一区二区 | 国精产品一品二品国精在线观看 | 99re6在线| 欧美精品一区二区三区在线四季 | 我爱操| 超碰精品在线 | 国产精品日韩欧美一区二区三区 | 一区二区三区欧美 | 免费看91 |