開發者提示與技能分享:以太坊 API——交易生命週期追蹤

買賣虛擬貨幣

使用 dfuse 可以輕鬆獲取以太坊上交易的實時狀態,例如:pending(待處理),replaced(已替換)和replaced(已入塊)。 dfuse 的 CTO Alexandre Bourget 在此影片中介紹了 dfuse 的以太坊生命週期 API,以及它怎麼幫助你搭建體驗流暢的互動式 dapp。

dfuse Search 讓你能用 AND、OR 和 NOT 運算子編寫查詢語句,搜尋以太坊的兩種資料:

EVM呼叫,查詢關鍵字有:signer(簽署者)、input(輸入)、value(值)、to(接收者)、from(傳送者)、method(方法),等等。

智慧合約中的定義的事件的日誌,查詢關鍵字有:topic.0、topic.2、data.1 等等。

當智慧合約將某個日誌事件標記為已索引時,它們會進節點的 Bloom 過濾器。但 dfuse 會索引一切,不光是在 Bloom 過濾器中找到的資訊。dfuse 的搜尋範圍可以擴充套件到預設範圍之外,因為它是真實資料的直接搜尋而不是 Bloom 過濾器的概率查詢,而且不會提供誤報。

你不在會為了質量而犧牲速度。dfuse Search 提供閃電般的搜尋,通常會在一秒內返回結果,讓你能夠創造出超凡的使用者體驗。以太坊上歷史資料龐大,因此 dfuse 利用快取來呼叫在鏈上找不到的結果的位置。這意味著,在首次對全鏈進行搜尋後,無論交易發生的時間有多遠,dfuse 都會給你全生態中最快的響應時間。

dfuse 搜尋還可以作為實時偵聽器。利用可監測分叉的 cursor 遊標,可以確保你不錯過任何的相關資訊。你可以對歷史進行搜尋,直到追上頭塊,然後繼續一直監聽下去。這樣的功能使許多開發人員只需使用 dfuse 的端點即可跳過很多障礙、開發時間和數百行額外的程式碼。

用可監測分叉的 cursor 遊標,即使連線斷了,即使您看到的最後一個交易不在鏈中,重連後也可以取回所需的所有資料。這樣就不再需要寫程式碼來處理每天發生的大量分叉,dfuse 會為你做這些繁重的工作。我們的許多使用者都說,這個功能就可以幫他們刪除多達90%的程式碼。

在以太坊上,你經常會發現每天出現一到兩個區塊的深度重組,每幾個月還會有一次三區塊的深度重組。Etheruem Classic (以太坊經典版)曾經甚至有過51個區塊的重組。對於處理敏感資訊的 dapp (例,金融交易),能這樣處理分叉是非常重要的。在監聽過程中如果遇到分叉, dfuse API 可以向你傳送 UNDO 提示,讓你可以及時知道並快速響應交易的回滾。

關注我們的 Twitter、微博和微信公眾號,加入dfuse Telegram 和微信群,和眾多開發者討論在做的專案,我們知道如何能幫到你。我們還為以太坊開發人員提供了免費版的賬號,讓你可以立即上手!

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;