Přejít na hlavní obsah
Change page

JavaScript API knihovny

Poslední aktualizace stránky: 25. února 2026

Aby mohla webová aplikace komunikovat s blockchainem Etherea (tj. číst data blockchainu a/nebo odesílat transakce do sítě), musí se připojit k uzlu Etherea.

Za tímto účelem každý klient Etherea implementuje specifikaci JSON-RPC, takže existuje jednotná sada metod, na které se aplikace mohou spolehnout.

Pokud chcete pro připojení k síťovému uzlu na Ethereu použít JavaScript, je možné využít vanilla JavaScript, ale v rámci ekosystému existuje několik užitečných knihoven, které vám to značně usnadní. Pomocí těchto knihoven mohou vývojáři psát intuitivní jednořádkové metody pro inicializaci JSON-RPC požadavků, které komunikují s Ethereem.

Vezměte prosím na vědomí, že od sloučení jsou ke spuštění uzlu potřeba dva propojené softwarové programy pro Ethereum – exekuční klient a konsensuální klient. Ujistěte se, že váš síťový uzel obsahuje oba dva. Pokud váš uzel není na vašem místním počítači (např. běží na instanci AWS), aktualizujte podle toho IP adresy v tutoriálu. Další informace naleznete na naší stránce o spuštění uzlu.

Předpoklady

Kromě znalosti JavaScriptu může být užitečné porozumět i Ethereum stacku a klientům Etherea.

Proč používat knihovnu?

Knihovny snižují složitost přímé interakce se síťovým uzlem Etherea. Poskytují také užitečné funkce (např. převod ETH na Gwei), takže jako vývojář můžete strávit méně času řešením složitostí ethereových klientů a více času se věnovat jedinečným funkcím své aplikace.

Funkce knihoven

Připojení k uzlům Ethereum

Tyto knihovny vám pomocí poskytovatelů umožňují připojit se k Ethereu a číst jeho data, ať už prostřednictvím JSON-RPC, INFURY, Etherscanu, Alchemy nebo MetaMasku.

Varování: Web3.js byl 4. března 2025 archivován. Přečtěte si oznámení (opens in a new tab). Pro nové projekty zvažte použití alternativních knihoven, jako jsou ethers.js (opens in a new tab) nebo viem (opens in a new tab).

Příklad v ethers

// BrowserProvider obaluje standardního poskytovatele Web3, kterého
// MetaMask vkládá do každé stránky jako window.ethereum
const provider = new ethers.BrowserProvider(window.ethereum)

// Plugin MetaMask také umožňuje podepisovat transakce pro
// odesílání etheru a placení za změnu stavu v rámci blockchainu.
// K tomu potřebujeme podepisovatele účtu...
const signer = provider.getSigner()

Příklad ve Web3js

Po nastavení se budete moci dotazovat na blockchain na:

  • čísla bloků
  • odhady paliva
  • události smart kontraktů
  • id sítě
  • a více...

Funkce peněženky

Tyto knihovny poskytují funkce pro vytváření peněženek, správu klíčů a podepisování transakcí.

Zde jsou příklady z Ethers

Přečtěte si celou dokumentaci (opens in a new tab)

Po nastavení budete moci:

  • vytvářet účty
  • odesílat transakce
  • podepisovat transakce
  • a více...

Interakce s funkcemi chytrých kontraktů

Knihovny JavaScriptových klientů umožňují vaší aplikaci volat funkce smart kontraktů načtením aplikačního binárního rozhraní (ABI) zkompilovaného kontraktu.

ABI v podstatě vysvětluje funkce kontraktu ve formátu JSON a umožňuje jej používat jako běžný objekt JavaScriptu.

Takže následující kontrakt v Solidity:

Výsledekem by byl následující JSON:

To znamená, že můžete:

  • Odeslat transakci do smart kontraktu a provést jeho metodu
  • Zjistit odhad množství paliva, který spotřebuje vykonání metody při spuštění v EVM
  • Nasadit kontrakt
  • A další...

Pomocné funkce

Tyto užitečné funkce poskytují praktické zkratky, které vám usnadní práci s Ethereem.

Hodnoty ETH jsou ve výchozím nastavení ve Wei. 1 ETH = 1 000 000 000 000 000 000 000 000 WEI - to znamená, že máte co do činění se spoustou čísel! web3.utils.toWei za vás převede ether na Wei.

A v etherech to vypadá následovně:

// Získejte zůstatek na účtu (podle adresy nebo jména ENS).
balance = await provider.getBalance("ethers.eth")
// { BigNumber: "2337132817842795605" }

// Často bude potřeba formátovat výstup pro uživatele, 
// kteří preferují zobrazení hodnot v etherech (namísto ve wei)
ethers.utils.formatEther(balance)
// '2.337132817842795605'

Dostupné knihovny

Web3.js – JavaScriptové API pro Ethereum.

Ethers.js – Kompletní implementace peněženky pro Ethereum a nástrojů v JavaScriptu a v TypeScriptu.

The Graph – Protokol pro indexování dat Etherea a IPFS a dotazování na ně pomocí GraphQL.

Alchemy SDK – Wrapper nad Ethers.js s vylepšenými API.

viem – TypeScript rozhraní pro Ethereum.

Drift – TypeScriptová meta-knihovna s vestavěným cachováním, hooky a testovacími mocky.

Další čtení

Víte o komunitním zdroji, který vám pomohl? Upravte tuto stránku a přidejte ho!

Byl tento článek užitečný?