Käytätkö Kora v2.2.0-beta -versiota? Katso Beta-dokumentaatio uusille bundle-metodeille (
signBundle,signAndSendBundle,estimateBundleFee) jagetVersion.
TypeScript SDK
@solana/kora-paketti tarjoaa kolme asiakasvaihtoehtoA Kora-palvelimen kanssa
vuorovaikutukseen:
KoraClient (Itsenäinen)
Käytä KoraClient itsenäiseen käyttöön. Toimii @solana/kit v5.0+ -version
kanssa.
import { KoraClient } from "@solana/kora";const kora = new KoraClient({ rpcUrl: "https://your-kora-server.com" });const config = await kora.getConfig();
koraPlugin (Kit-yhteensopiva)
Käytä koraPlugin() Kora-metodien liittämiseen olemassa olevaan
Kit-asiakkaaseen. Vaatii @solana/kit v5.4+ -version
createEmptyClient().use()-mallia varten.
import { createEmptyClient } from "@solana/kit";import { koraPlugin } from "@solana/kora";const client = createEmptyClient().use(koraPlugin({ endpoint: "https://your-kora-server.com" }));const config = await client.kora.getConfig();
Laajennus tarjoaa Kit-tyypitetyt vastaukset (Address, Blockhash,
Base64EncodedWireTransaction) ja viestii KoraPlugin-tyypin muiden
laajennusten kanssa koostamiseen.
createKitKoraClient (Kit-asiakas)
Käytä createKitKoraClient() täyteen Kit-integrointiin automaattisella
tapahtumien suunnittelulla, maksuarvioinnilla, maksun injektoinnilla ja
suorituksella. Tämä on suositeltu lähestymistapa useimmille sovelluksille.
Vaatii @solana/kit v6.1+ -version.
Kit-asiakas yhdistää Koran Kitin laajennusarkkitehtuuriin (suunnittelija-,
suoritus-, maksajalaajennukset), jotta voit käyttää Kit-ohjelmalaajennuksia
kuten tokenProgram() suoraan.
import { createKitKoraClient } from "@solana/kora";import { address } from "@solana/kit";import { tokenProgram } from "@solana-program/token";const client = await createKitKoraClient({endpoint: "https://your-kora-server.com",rpcUrl: "https://api.mainnet-beta.solana.com",feeToken: address("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"), // USDCfeePayerWallet: userSigner // TransactionSigner that authorizes SPL fee payment});// Compose with Kit program pluginsconst tokenClient = client.use(tokenProgram());// Send transactions — Kora handles blockhash, fee estimation,// payment instruction injection, signing, and submissionawait tokenClient.token.instructions.transferToATA({/* ... */}).sendTransaction();
Määritysasetukset:
| Asetus | Pakollinen | Kuvaus |
|---|---|---|
endpoint | Kyllä | Kora RPC -päätepisteen URL |
rpcUrl | Kyllä | Solana RPC URL laskentayksikköarviointiin ja ohjelmalaajennuksen yhteensopivuuteen |
feeToken | Kyllä | SPL-lyöntiosoite maksun maksuun |
feePayerWallet | Kyllä | TransactionSigner, joka valtuuttaa SPL-maksun |
apiKey | Ei | API-avain todennukseen |
hmacSecret | Ei | HMAC-salaisuus allekirjoituspohjaiseen todennukseen |
computeUnitLimit | Ei | Kiinteä laskentayksikkörajoitus (käyttää simulaatiopohjaista arviointia, jos ei asetettu) |
computeUnitPrice | Ei | Prioriteettimaksu mikrolamportteina |
tokenProgramId | Ei | Token program ID (oletuksena Token Program; käytä Token-2022-osoitetta Token-2022-tokeneille) |
Protokolla
- Standardi: JSON-RPC 2.0
- Siirto: HTTP POST
- Content-Type: application/json
- Päätepiste:
http://your-kora-instance/
Saatavilla olevat metodit
| Metodi | Kuvaus |
|---|---|
| estimateTransactionFee | Arvioi transaktiomaksun sekä lamporteissa että määritetyssä tokenissa. |
| getBlockhash | Hakee uusimman blockhash-arvon Solana RPC:stä, johon Kora-palvelin on yhdistetty. |
| getConfig | Hakee Kora-palvelimen nykyisen konfiguraation. |
| getPayerSigner | Hakee maksajan allekirjoittajan ja maksun kohteen Kora-palvelimelta. |
| getPaymentInstruction | Luo maksuohjeen, joka liitetään transaktioon maksun suorittamiseksi Kora-paymasterille. |
| getSupportedTokens | Hakee listan tokeneista, joita tuetaan maksun suorittamisessa. |
| signAndSendTransaction | Allekirjoittaa transaktion ja lähettää sen välittömästi Solana-verkkoon. |
| signTransaction | Allekirjoittaa transaktion Kora-maksajalla, jos transaktio sisältää tarvittavan maksun maksajalle lähettämättä sitä verkkoon. |
| transferTransaction | Luo token-siirtotransaktion, jossa Kora toimii maksajana. |
Pyynnön muoto
Kaikki pyynnöt noudattavat JSON-RPC 2.0 -standardia:
{"jsonrpc": "2.0","id": 1,"method": "methodName","params": {}}
Vastauksen muoto
Onnistuneet vastaukset:
{"jsonrpc": "2.0","id": 1,"result": {}}
Virheelliset vastaukset:
{"jsonrpc": "2.0","id": 1,"error": {"code": -32600,"message": "Invalid request"}}
Is this page helpful?