Chainlink網(wǎng)絡(luò)中的中間件和API的定義介紹
Chainlink為智能合約提供中間件,通過API與外部資源連接。為了能充分理解這其中的奧義,我們先來解釋一下中間件和API的定義,然后再探討如何在Chainlink網(wǎng)絡(luò)中加以利用。
中間件是什么?
中間件是讓兩個軟件實現(xiàn)交互的計算機(jī)軟件。開發(fā)者無須花費大量人力物力讓兩種不同的系統(tǒng)軟件兼容,而是可以使用現(xiàn)成的中間件快速連接兩個系統(tǒng)。這就好比兩家在不同城市的企業(yè)利用高速公路等現(xiàn)有基礎(chǔ)設(shè)施相互運輸貨物,而無須重新建設(shè)自己的高速公路。
API是什么?
如今最常見的中間件是應(yīng)用程序接口(API)。API以明確的方式與某一系統(tǒng)進(jìn)行交互,無須了解該系統(tǒng)的任何實現(xiàn)細(xì)節(jié)。企業(yè)通常會開發(fā)自己的API,讓其他應(yīng)用利用它們的服務(wù)和數(shù)據(jù)。舉個例子,百度向其他應(yīng)用軟件開放API以出售GPS數(shù)據(jù)。
開發(fā)者利用API可以更快地開發(fā)出成本低廉的應(yīng)用軟件,而無須事事親力親為。比如主流打車軟件滴滴在軟件開發(fā)中使用了GPS API(定位),短信API(信息)和支付API,而不是自主開發(fā)每一個功能。
Chainlink-API中間件將智能合約連接到鏈下世界
Chainlink提供基礎(chǔ)的中間件,將智能合約連接到原生區(qū)塊鏈以外的(鏈下)API。這樣一來,智能合約可以就使用外部數(shù)據(jù)API觸發(fā)合約執(zhí)行,并向外部系統(tǒng)API發(fā)送數(shù)據(jù)進(jìn)行結(jié)算。
以下是幾個應(yīng)用場景:
· 航班保險智能合約連接到一個可信網(wǎng)站API(OAG)獲取數(shù)據(jù),以判斷航班是否取消或延誤。如果航班延誤,智能合約將連接至一個外部支付系統(tǒng)API(支付寶)以當(dāng)?shù)刎泿牛ㄈ嗣駧牛┙Y(jié)算。
· 貨物付款智能合約連接GPS API獲取定位數(shù)據(jù),連接海關(guān)API確定貨物是否已經(jīng)清關(guān),連接物聯(lián)網(wǎng)API確保運輸中的質(zhì)量控制(集裝箱門是否鎖住,運輸過程中貨物是否一直保存在適當(dāng)?shù)臏囟认碌龋?。一旦所有?shù)據(jù)傳輸?shù)街悄芎霞s并且經(jīng)過確認(rèn),智能合約就會被連接到支付系統(tǒng)API以任意貨幣進(jìn)行結(jié)算。
除此之外還有許多其他應(yīng)用場景,而在每一個應(yīng)用場景中,Chainlink都提供了穩(wěn)健的平臺,讓智能合約能通過API連接到任何數(shù)據(jù)點或系統(tǒng)。此類中間件大幅提高了開發(fā)者開發(fā)應(yīng)用的便利性,因為他們不需要費時費力重新開發(fā)與外部世界連接的基礎(chǔ)架構(gòu)。我們相信Chainlink中間件是推動智能合約在現(xiàn)實世界中廣泛應(yīng)用的關(guān)鍵一環(huán)。