亚洲精品久久久久久久久久久,亚洲国产精品一区二区制服,亚洲精品午夜精品,国产成人精品综合在线观看,最近2019中文字幕一页二页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是API

汽車(chē)電子技術(shù) ? 來(lái)源:碼農(nóng)與軟件時(shí)代 ? 作者:碼農(nóng)與軟件時(shí)代 ? 2023-02-14 14:54 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

**一、什么是API?

**

對(duì)于普通吃瓜而言,API是到底是個(gè)啥真心聽(tīng)不懂。下面我們來(lái)看一下實(shí)例:周末想出去玩,自已不想太累,索性打車(chē),到了車(chē)上你告訴司機(jī),去某某地方,司機(jī)明白了,直接將你送到指定位置,而無(wú)須你去考慮如何走的問(wèn)題。這里司機(jī)提供的是打車(chē)服務(wù),服務(wù)的提供者就是司機(jī),你就是服務(wù)的調(diào)用者或者使用者。

我們?cè)賮?lái)以IT的視角來(lái)描述下API是個(gè)啥?API(Application Programming Interface,應(yīng)用程序編程接口)是一些預(yù)先定義的函數(shù),目的是提供一種訪問(wèn)函數(shù)的能力,而又無(wú)需訪問(wèn)函數(shù)內(nèi)部的源碼或者理解內(nèi)部編寫(xiě)的細(xì)節(jié)。

如果你來(lái)對(duì)比一下,可以發(fā)現(xiàn)打車(chē)服務(wù)和訪問(wèn)函數(shù)的能力非常類(lèi)似。API實(shí)質(zhì)上就是為別人或第三方提供服務(wù)的接口。

二、為什么會(huì)產(chǎn)生API?

前面說(shuō)到API是為第三方提供服務(wù)的接口,那為什么軟件需要API呢,我們可以從軟件的提供者、使用者、開(kāi)發(fā)者等幾個(gè)角度來(lái)說(shuō)明:

從軟件提供者的角度來(lái)講,特別是“平臺(tái)型”軟件提供者,提供API供第三方應(yīng)用程序來(lái)調(diào)用,可以形成生態(tài),才能更有競(jìng)爭(zhēng)力。如百度AI開(kāi)放平臺(tái)提供語(yǔ)音、圖像、人臉與人體識(shí)別、視頻等技術(shù)的API,打造全球領(lǐng)先的人工智能服務(wù)平臺(tái)。。

從軟件使用者的角度來(lái)講,特別是大型電信運(yùn)營(yíng)商,在建設(shè)內(nèi)部系統(tǒng)時(shí),一般會(huì)尋求從多家軟件廠商采購(gòu),避免被軟件提供商鎖定,出現(xiàn)“結(jié)婚容易離婚難”的窘境。如運(yùn)營(yíng)商的運(yùn)營(yíng)支撐系統(tǒng)包含客戶(hù)關(guān)系管理系統(tǒng)、計(jì)費(fèi)系統(tǒng)、呼叫中心、合作伙伴關(guān)系管理系統(tǒng)、ERP系統(tǒng)等,通常是幾家軟件提供商共建整個(gè)運(yùn)營(yíng)支撐系統(tǒng)。

從應(yīng)用開(kāi)發(fā)者的角度來(lái)講,特別是“內(nèi)容聚合系統(tǒng)”之類(lèi)公司,通過(guò)調(diào)用開(kāi)放的API,可以直接調(diào)用API來(lái)做自己的應(yīng)用,集成各大公司的內(nèi)容,并基于此做更高層次的創(chuàng)新。如今日頭條聚合了各家公司的內(nèi)容,外加大數(shù)據(jù)分析推薦系統(tǒng),形成個(gè)性化的服務(wù)。

三、API的幾種形式

1.本地調(diào)用

我們知道在本地調(diào)用非常地簡(jiǎn)單,例如實(shí)現(xiàn)如下3個(gè)值的相加,就可以寫(xiě)一個(gè)簡(jiǎn)單的函數(shù),供主函數(shù)main()來(lái)調(diào)用。在執(zhí)行過(guò)程中,調(diào)用是發(fā)生在同一CPU、內(nèi)存地址空間:

圖片

2. RPC

那如果是不同機(jī)器上的不同程序間的調(diào)用應(yīng)該如何來(lái)做呢?ANDREW D. BIRRELL在論文《Implementing Remote Procedure Calls》給出了一種解決方案:RPC(Remote Procedure Calls,遠(yuǎn)程過(guò)程調(diào)用)。其主要思想是調(diào)用遠(yuǎn)程機(jī)器上的程序就像在本地機(jī)器的地址空間中一樣。隱藏分布式環(huán)境重要的部分:對(duì)參數(shù)和結(jié)果的編解碼、消息傳遞以及保留過(guò)程調(diào)用的語(yǔ)義。其基本流程圖如下所示:

圖片

①User以本地調(diào)用函數(shù)的方式去調(diào)用User-stub;

②User-stub生成消息并調(diào)用RPC Runtime;

③RPC Runtime將消息發(fā)送給遠(yuǎn)程RPC Runtime;

④遠(yuǎn)程RPC Runtime將請(qǐng)求消息交給Server-stub;

⑤Server-stub提取參數(shù)并調(diào)用Server;

⑥Server執(zhí)行業(yè)務(wù)邏輯,并將結(jié)果返回給Server-stub;

⑦Server-stub生成響應(yīng)消息,而后調(diào)用RPC Runtime;

⑧RPC Runtime將響應(yīng)消息發(fā)送給客戶(hù)端RPC Runtime;

⑨RPC Runtime將消息交給User-stub;

⑩User-stub提取結(jié)果信息,返回給User。

3. RESTFUL API

隨著互聯(lián)網(wǎng)的發(fā)展,使得這ICT領(lǐng)域開(kāi)始融合,“如何開(kāi)發(fā)在互聯(lián)網(wǎng)環(huán)境中使用的軟件”成為一個(gè)課題,也就是Web 應(yīng)用應(yīng)該如何運(yùn)轉(zhuǎn)?Roy Thomas Fielding認(rèn)為“一個(gè)由Web頁(yè)組成的網(wǎng)絡(luò),用戶(hù)通過(guò)選擇鏈接在應(yīng)用中前進(jìn)(狀態(tài)遷移),導(dǎo)致下一個(gè)頁(yè)面(應(yīng)用的下一個(gè)狀態(tài)的表述)被轉(zhuǎn)移給用戶(hù),并且呈現(xiàn)給他們,以便他們來(lái)使用”,并在論文《架構(gòu)風(fēng)格和基于網(wǎng)絡(luò)的軟件架構(gòu)設(shè)計(jì)》給出了一種解決方案:REST(Representational State Transfer,表現(xiàn)層狀態(tài)轉(zhuǎn)化)。其主要特點(diǎn)為資源、統(tǒng)一接口、URI、無(wú)狀態(tài)。這里說(shuō)明下資源和統(tǒng)一接口即:

u 資源:將網(wǎng)絡(luò)中任何實(shí)體都看成資源??梢允且欢挝谋尽⒁粡垐D片、一首歌曲、一個(gè)視頻。其具體的體現(xiàn)形式:文本可以用txt、HTML、XML、Json或二進(jìn)制等格式表現(xiàn)。

u 統(tǒng)一接口:REST架構(gòu)風(fēng)格規(guī)定,數(shù)據(jù)的增刪除查改對(duì)應(yīng)于HTTP方法,統(tǒng)一了數(shù)據(jù)操作的接口,如GET用來(lái)獲取資源,POST用來(lái)新建資源,PUT用來(lái)更新資源,DELETE用來(lái)刪除資源。

總的來(lái)說(shuō),REST可以理解為:使用URL表示資源,使用HTTP的GET\\PUT\\POST等方法進(jìn)行資源的操作。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • API
    API
    +關(guān)注

    關(guān)注

    2

    文章

    1994

    瀏覽量

    65906
  • 源碼
    +關(guān)注

    關(guān)注

    8

    文章

    678

    瀏覽量

    30939
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4403

    瀏覽量

    66588
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    vc++ api函數(shù) (Windows API大全)

    Windows API大全,本書(shū)主要介紹VC++里API函數(shù)及其用法-WindowsAPI Daquan, the book introduces VC Lane API function
    發(fā)表于 10-14 11:45 ?32次下載

    JDBCTM 2.0 API

    The JDBCTM API is the JavaTM standard call-level API for database access. This documentcontains the final specification of the JDBC 2.0
    發(fā)表于 10-14 17:42 ?6次下載

    分析API都有哪些特點(diǎn)

    好的API是怎樣的,應(yīng)該具備哪些特點(diǎn),作者對(duì)此進(jìn)行了詳細(xì)說(shuō)明,并把API比作產(chǎn)品,主張編寫(xiě)API時(shí)從用戶(hù)的角度換位思考。 如果用戶(hù)通過(guò)他們自己的代碼與你的代碼進(jìn)行交互,那么你將需要構(gòu)建一個(gè)AP
    發(fā)表于 09-28 17:38 ?11次下載

    如何使用API_api接口有什么優(yōu)點(diǎn)

    關(guān)于什么是API,通俗的解釋?xiě)?yīng)該是:一個(gè)組件(或程序庫(kù))提供給開(kāi)發(fā)者進(jìn)行編程使用的,通過(guò)代碼可以與之溝通的入口。比如說(shuō)你下載了一個(gè)控件包,通過(guò)閱讀說(shuō)明你知道應(yīng)該如何創(chuàng)建上下文、初始化、設(shè)置屬性、調(diào)用、回調(diào)、事件處理,這些就是這個(gè)控件包的API。
    發(fā)表于 01-04 11:36 ?2.1w次閱讀

    REST API是什么,如何使用REST端口

    API是Application Programming Interface(應(yīng)用程序接口)的縮寫(xiě),它是拿來(lái)描述一個(gè)類(lèi)庫(kù)的特征或是如何去運(yùn)用它。按照目前比較主流的分法,可以分為REST API和非
    的頭像 發(fā)表于 02-17 18:00 ?1w次閱讀
    REST <b class='flag-5'>API</b>是什么,如何使用REST端口

    什么是API,不同場(chǎng)景中的API

    當(dāng)公司構(gòu)建他們的應(yīng)用時(shí),他們把它們?cè)O(shè)計(jì)成一組交互的API。最容易理解的例子是Lyft(或者Uber)。你可能想在Lyft應(yīng)用中做一些事情,它們?cè)谀缓蠖紩?huì)觸發(fā)不同的API
    的頭像 發(fā)表于 08-10 11:20 ?3242次閱讀

    API+DevOps:華為云API Arts一體化平臺(tái),端到端呵護(hù)您的API

    API+ | 以API-First理論為基礎(chǔ),以API為核心構(gòu)建數(shù)字化生態(tài) 摘要:華為云API Arts是API全生命周期一體化協(xié)作平臺(tái),支
    的頭像 發(fā)表于 02-17 19:05 ?1541次閱讀

    API+DevOps:華為云API Arts一體化平臺(tái),端到端呵護(hù)您的API

    華為云API Arts是API全生命周期一體化協(xié)作平臺(tái),支持開(kāi)發(fā)者一站式高效實(shí)現(xiàn)API設(shè)計(jì)、API開(kāi)發(fā)、API測(cè)試、
    的頭像 發(fā)表于 03-01 15:45 ?1151次閱讀
    <b class='flag-5'>API</b>+DevOps:華為云<b class='flag-5'>API</b> Arts一體化平臺(tái),端到端呵護(hù)您的<b class='flag-5'>API</b>

    為什么需要 API 網(wǎng)關(guān)?

    API 網(wǎng)關(guān)是 API 全生命周期管理的關(guān)鍵基礎(chǔ)組件,負(fù)責(zé)生產(chǎn)環(huán)境中 API 的配置、發(fā)布、版本回滾、安全、負(fù)載均衡等。API 網(wǎng)關(guān)是所有終端流量的入口,負(fù)責(zé)把終端的
    的頭像 發(fā)表于 05-04 17:47 ?1265次閱讀
    為什么需要 <b class='flag-5'>API</b> 網(wǎng)關(guān)?

    企業(yè)怎么選擇API網(wǎng)關(guān)

    ? 一、API網(wǎng)關(guān)的用處 API網(wǎng)關(guān)我的分析中會(huì)用到以下三種場(chǎng)景。 1、Open API 企業(yè)需要將自身數(shù)據(jù)、能力等作為開(kāi)發(fā)平臺(tái)向外開(kāi)放,通常會(huì)以rest的方式向外提供。最好的例子就是淘寶開(kāi)放平臺(tái)
    的頭像 發(fā)表于 05-23 11:05 ?1081次閱讀
    企業(yè)怎么選擇<b class='flag-5'>API</b>網(wǎng)關(guān)

    api接口怎么使用

    本文就從API接口的維度,淺析API的概念以及為什么要了解它 一、API的概念 API,官方定義為應(yīng)用程序編程接口。就是把是一些預(yù)先定義的接口,用來(lái)提供應(yīng)用程序與開(kāi)發(fā)人員基于某軟件或硬
    的頭像 發(fā)表于 05-24 14:44 ?1926次閱讀

    api網(wǎng)關(guān) kong 教程入門(mén)

    為什么使用API-Gateway 方便客戶(hù)端維護(hù)– 每個(gè)請(qǐng)求方不用管理多個(gè)api url,統(tǒng)一訪問(wèn)api-gateway即可 接口重構(gòu)時(shí)調(diào)用方不須了解接口本身等拆分和聚合 客戶(hù)端無(wú)須關(guān)心接口協(xié)議
    的頭像 發(fā)表于 11-10 11:39 ?1528次閱讀
    <b class='flag-5'>api</b>網(wǎng)關(guān) kong 教程入門(mén)

    華為云發(fā)布 CodeArts API,為 API 護(hù)航

    4 月 10 日,華為云正式發(fā)布 API 全生命周期管理一體化協(xié)作平臺(tái) CodeArts API,支持開(kāi)發(fā)者高效實(shí)現(xiàn) API 設(shè)計(jì)、開(kāi)發(fā)、測(cè)試、托管、運(yùn)維、變現(xiàn)的一站式體驗(yàn)。以 API
    的頭像 發(fā)表于 05-09 23:17 ?1225次閱讀
    華為云發(fā)布 CodeArts <b class='flag-5'>API</b>,為 <b class='flag-5'>API</b> 護(hù)航

    代購(gòu)系統(tǒng) API 介紹

    1. 用戶(hù)相關(guān) API 用戶(hù)注冊(cè) POST /api/users/register 參數(shù):username, email, password, phone 返回:user_id, token 用戶(hù)
    的頭像 發(fā)表于 10-08 09:21 ?91次閱讀

    RESTful API設(shè)計(jì)原則: 構(gòu)建易用、可擴(kuò)展的API接口

    在當(dāng)今微服務(wù)架構(gòu)和分布式系統(tǒng)盛行的時(shí)代,RESTful API已成為系統(tǒng)間通信的核心橋梁。優(yōu)秀的API設(shè)計(jì)不僅能提升開(kāi)發(fā)效率,還能顯著降低系統(tǒng)維護(hù)成本。本文將深入探討如何遵循REST
    的頭像 發(fā)表于 10-20 13:45 ?158次閱讀