色色一区二区三区,一本大道道久久九九AV综合,国产香蕉97碰碰视频va碰碰看,综合亚洲国产2020

    <legend id="mljv4"><u id="mljv4"><blockquote id="mljv4"></blockquote></u></legend>

    <sub id="mljv4"><ol id="mljv4"><abbr id="mljv4"></abbr></ol></sub>
      <mark id="mljv4"></mark>
      人文藝術(shù) > 什么是API接口,具體是什么意思?

      什么是API接口,具體是什么意思?

      2020-11-16 23:05閱讀(59)

      什么是API接口,具體是什么意思?:作為軟件應(yīng)用而言,很多資源和數(shù)據(jù)不一定就是由其自身提供的,某些功能還是需要調(diào)用第三方提供的服務(wù),這其中就涉及到API接口:

      1

      作為軟件應(yīng)用而言,很多資源和數(shù)據(jù)不一定就是由其自身提供的,某些功能還是需要調(diào)用第三方提供的服務(wù),這其中就涉及到API接口的調(diào)用。

      什么是API接口?

      API是指應(yīng)用程序編程接口,我們通過API接口可以實現(xiàn)特定的功能,而不需要了解其內(nèi)部實現(xiàn)細節(jié)。可以把API接口理解為是特定服務(wù)的一種封裝,將服務(wù)封裝起來提供給他人調(diào)用,這樣一來很多功能不需要從新開發(fā)。

      舉個例子,我們想要知道一周天氣如何,如果由自己來實現(xiàn)這個功能很難,因為天氣數(shù)據(jù)只有氣象部門才知道。那該如何知道天氣信息呢?氣象部分提供數(shù)據(jù)API給我們使用,我們只要輸入地區(qū)就會知道該地區(qū)一周的天氣情況,但我們并不需要了解這天氣預(yù)報是如何實現(xiàn)的。

      另外,不同系統(tǒng)和編程語言之間的數(shù)據(jù)通訊往往也采用API形式進行數(shù)據(jù)交接。

      常見的API形式有哪些?

      上面我們說到了,API其實就是一類服務(wù)的封裝。我們可以使用不同的編程語言編寫API,開發(fā)習慣和編程語言的不同導致API風格也存在差異。常見的API有以下幾種形式:

      1、HTTP類型接口

      基于HTTP協(xié)議提供的API,這類API常常以“網(wǎng)址”形式提供的,像現(xiàn)在主流的RESTful就屬于這類接口。

      2、RPC接口

      RPC它是指遠程過程調(diào)用,將一部分代碼邏輯放在遠程服務(wù)器上部署,然后在需要的地方調(diào)用即可(調(diào)用遠程方法就像調(diào)用本地方法一樣),本質(zhì)上是Client/Server模式,而且支持多種協(xié)議和數(shù)據(jù)傳輸方式。

      3、Web Service 接口

      Web Service并不具象地指某種API,我們將以WEB形式提供的服務(wù)都稱之為Web Service,像RESTful也屬于Web Service。

      以上就是我的觀點,對于這個問題大家是怎么看待的呢?歡迎在下方評論區(qū)交流 ~ 我是科技領(lǐng)域創(chuàng)作者,十年互聯(lián)網(wǎng)從業(yè)經(jīng)驗,歡迎關(guān)注我了解更多科技知識!

      2

      API(接口)是什么?舉個常見的例子,在京東上下單付款之后,商家選用順豐發(fā)貨,然后你就可以在京東上實時查看當前的物流信息。京東和順豐作為兩家獨立的公司,為什么會在京東上實時看到順豐的快遞信息,這就要用到API,當查看自己的快遞信息時,京東利用順豐提供的API接口,可以實時調(diào)取信息呈現(xiàn)在自己的網(wǎng)站上。除此,你也可以在快遞100上輸入訂單號查取到快遞信息。只要有合作,或是有允許,別的公司都可以通過順豐提供的API接口調(diào)取到快遞信息。既然有多方調(diào)用,那提供一個統(tǒng)一的調(diào)用規(guī)范會方便很多。

      我們看下百度是怎么給出API的定義的:

      API(Application Programming Interface,應(yīng)用程序編程接口)是一些預(yù)先定義的函數(shù),目的是提供應(yīng)用程序與開發(fā)人員基于某軟件或硬件得以訪問一組例程的能力,而又無需訪問源碼,或理解內(nèi)部工作機制的細節(jié)。

      從百度定義中,我們先劃下重點:函數(shù)、 提供應(yīng)用程序與開發(fā)人員 、無需訪問源碼、例程 。注意這四個短語。其中,例程是某個系統(tǒng)對外提供的功能接口或服務(wù)的集合,本文著重說下API的數(shù)據(jù)服務(wù)功能接口。

      首先,下面的文章我會先演示怎么通過瀏覽器,不需要編程、不需要訪問源碼,來調(diào)用免費的API接口,達到讓你怎么使用最簡單的接口;

      然后,會演示怎么通過編程去調(diào)用接口;

      最后,演示開啟WEB服務(wù),寫一個簡單的API接口,以體現(xiàn)出API的函數(shù) (y=f(x)) 功能。

      你也可以復制代碼試下。通過你自己的嘗試,你會了解到些后端、前段的東西,并加深你對API的理解。那么我們就開始吧,先上一個圖:以API提供信息(數(shù)據(jù))的功能,看下數(shù)據(jù)是怎么流動的。如果給API一個具體的位置的話,就位于下圖中央。

      為了更改的理解,我穿插一個故事角色。假如,世界太大,身處非洲大陸的你想去看看,成為了一個水手,被一位著名的航海家?guī)トミh航(你掌握著船上唯一一臺衛(wèi)星電腦),途中不免航海家會讓確定下城市的經(jīng)緯度。這時航海家讓你去確定下深圳市的經(jīng)緯度。

      1、你是個人肉API

      這時,你能想到簡單的辦法就是去百度搜索一下。 除了航海家,船上的高級水手、大副,估計都有可能向你問,這個時候,其實你就是一個接口,大家都來向你獲取地理位置信息,作為接口,你本身不產(chǎn)生信息,你只是信息的搜集者、傳遞者,提供人肉數(shù)據(jù)服務(wù)。

      2、使用免費的經(jīng)緯度API接口

      在百度搜索的過程中,眾多網(wǎng)友給出的經(jīng)緯度不一致,你要反復對比,去辨真?zhèn)巍r間長了,你可能會覺得大家都問位置,太煩了,我這個人肉API效率太慢,有沒有更快的方式。

      這時你發(fā)現(xiàn)了一個阿里云的一個免費的API接口:http://gc.ditu.aliyun.com/geocoding?a=深圳。你在瀏覽器地址欄輸入了這個URL,果然得到了正確的經(jīng)緯度,你又把URL中的深圳改為了別的城市,發(fā)現(xiàn)也可以查到。這時,通過這個接口,你給大伙確定位置的效率大大提升。

      3、你不滿足于此

      你覺得這個接口太好了,剛好你會點Python,何不寫點代碼,注意這個時候你的角色發(fā)生了變化:你由一個人肉API轉(zhuǎn)變了一個開發(fā)人員(注意這個是百度API定義中的關(guān)鍵詞),你現(xiàn)在的目標是寫代碼,能夠自動獲取到這個某個地方的經(jīng)緯度

      到這里,我們再來回顧下API的百度定義。目前,你作為一個開發(fā)人員, 具備通過寫了幾行代碼訪問“阿里云經(jīng)緯度接口”的能力, 你無需訪問這個API的源碼、不需要理解這個API是怎么弄成的 。也就是,不管是通過瀏覽器,還是編程語言,目前你已經(jīng)會用簡單的API了。

      4、在會用簡單API的接口后,你進一步想知道它的內(nèi)在機制是什么

      建立在會用的基礎(chǔ)之上,那么API的源碼、其內(nèi)在機制是怎么回事?目前你能調(diào)用經(jīng)緯度的API,簡單的獲取到位置還不夠,你可能自己想寫一個API接口,不緊緊提供位置信息,同時附加上對這個城市的介紹

      執(zhí)行web_server.py,執(zhí)行后就會開啟一個web服務(wù)

      接著,我們在瀏覽器輸入http://192.168.199.204:8888/?id=深圳

      注意,我自己的電腦局域網(wǎng)IP是192.168.199.204,需要替換成你自己電腦(或虛擬機)的ip

      從上圖看,我們實現(xiàn)了,和”阿里云經(jīng)緯接口“的相同功能,并且獲取到了除經(jīng)緯度,還有對城市的簡單描述。隨著航行越來越多,你讓船上的大伙不僅了解了地理位置信息,也了解了每個城市的經(jīng)濟人文情況。隨著信息數(shù)據(jù)的增多,特別需要一個東西能先把數(shù)據(jù)先保存起來,用到的時候,API再直接調(diào)用。

      5、數(shù)據(jù)儲存,調(diào)我所需

      上面我們模仿了阿里云的API,自己搭建了一個web服務(wù),提供了一個更為詳細的API地理位置信息服務(wù),F(xiàn)在想一下,我們的代碼里只有深圳、青島兩個城市,還有很多沒提到的城市,另外,城市還有經(jīng)濟發(fā)展情況、飲食文化等。我們把深圳、青島兩個城市信息存入到mysql里。

      存入之后,我們從mysql里直接拿數(shù)據(jù),通過API直接展現(xiàn)在到瀏覽器中。改動 web_server.py腳本中的

      保存web_server.py后,再執(zhí)行重啟下,瀏覽器地址輸入http://192.168.199.204:8888/?id=深圳,出現(xiàn)與第4步同樣的結(jié)果,但這次是從mysql中拿數(shù)據(jù),通過API接口展示到瀏覽器的。至此,你不僅會使用API,而且也通過tornado開啟web服務(wù)、開啟了一個API查詢接口。

      最后再總結(jié)一下,從上面的文中,首先我大概畫了一張圖,結(jié)合數(shù)據(jù)的流動,描述了API的位置,接著用了一個故事從一個信息的搜集者,怎么利用現(xiàn)有的接口,去提供一個更棒的接口。當然這個太簡單了。但我覺得也能說明API的基本意思,生產(chǎn)環(huán)境中API要復雜的多牽涉到數(shù)據(jù)的復雜性、接口的穩(wěn)定性、高可用、還有安全性。

      3

      什么是API接口?是個錯誤的說法。

      應(yīng)該是“什么是API”?

      這種問題表述方式就說明了問題的本質(zhì),就是API這事,用中文表述不太“順暢”。

      日常交流,特別是網(wǎng)絡(luò)上交流中,解釋API是什么意思,與交流過程的上下文相關(guān)性極強。在交流者彼此了解的背景下,這種概念的模糊性不會帶來任何理解困難。

      非專業(yè)人員,不吹牛,真的沒必要理解什么是API。

      相關(guān)問答推薦