JSON-RPC API Übersicht

Verwenden Sie Kora v2.2.0-beta? Siehe die Beta-Dokumentation für neue Bundle-Methoden (signBundle, signAndSendBundle, estimateBundleFee) und getVersion.

TypeScript SDK

Das @solana/kora-Paket bietet drei Client-Optionen für die Interaktion mit einem Kora-Server:

KoraClient (Eigenständig)

Verwenden Sie KoraClient für eigenständige Nutzung. Funktioniert mit @solana/kit v5.0+.

import { KoraClient } from "@solana/kora";
const kora = new KoraClient({ rpcUrl: "https://your-kora-server.com" });
const config = await kora.getConfig();

koraPlugin (Kit Composable)

Verwenden Sie koraPlugin(), um Kora-Methoden in einen bestehenden Kit-Client zu integrieren. Erfordert @solana/kit v5.4+ für das createEmptyClient().use()-Muster.

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();

Das Plugin liefert Kit-typisierte Antworten (Address, Blockhash, Base64EncodedWireTransaction) und exportiert den KoraPlugin-Typ zur Komposition mit anderen Plugins.

createKitKoraClient (Kit Client)

Verwenden Sie createKitKoraClient() für vollständige Kit-Integration mit automatischer Transaktionsplanung, Gebührenschätzung, Zahlungseinspeisung und Ausführung. Dies ist der empfohlene Ansatz für die meisten Anwendungen. Erfordert @solana/kit v6.1+.

Der Kit-Client kombiniert Kora mit Kits Plugin-Architektur (Planer-, Executor-, Payer-Plugins), sodass Sie Kit-Programm-Plugins wie tokenProgram() direkt verwenden können.

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"), // USDC
feePayerWallet: userSigner // TransactionSigner that authorizes SPL fee payment
});
// Compose with Kit program plugins
const tokenClient = client.use(tokenProgram());
// Send transactions — Kora handles blockhash, fee estimation,
// payment instruction injection, signing, and submission
await tokenClient.token.instructions
.transferToATA({
/* ... */
})
.sendTransaction();

Konfigurationsoptionen:

OptionErforderlichBeschreibung
endpointJaKora RPC Endpunkt-URL
rpcUrlJaSolana RPC-URL für Compute Unit-Schätzung und Kompatibilität mit Programm-Plugins
feeTokenJaSPL-Mint-Adresse für Gebührenzahlung
feePayerWalletJaTransactionSigner, der die SPL-Gebührenzahlung autorisiert
apiKeyNeinAPI-Schlüssel für Authentifizierung
hmacSecretNeinHMAC-Secret für signaturbasierte Authentifizierung
computeUnitLimitNeinFestes Compute Unit-Limit (verwendet simulationsbasierte Schätzung, falls nicht gesetzt)
computeUnitPriceNeinpriority fee in Mikro-Lamports
tokenProgramIdNeinToken Program ID (standardmäßig Token Program; verwenden Sie Token-2022-Adresse für Token-2022-Token)

Protokoll

  • Standard: JSON-RPC 2.0
  • Transport: HTTP POST
  • Content-Type: application/json
  • Endpoint: http://your-kora-instance/

Verfügbare Methoden

MethodeBeschreibung
estimateTransactionFeeSchätzt die Transaktionsgebühr sowohl in Lamports als auch im angegebenen Token.
getBlockhashRuft den neuesten Blockhash vom Solana-RPC ab, mit dem der Kora-Server verbunden ist.
getConfigRuft die aktuelle Konfiguration des Kora-Servers ab.
getPayerSignerRuft den Zahler-Signer und das Zahlungsziel vom Kora-Server ab.
getPaymentInstructionErstellt eine Zahlungsanweisung, die einer Transaktion für die Gebührenzahlung an den Kora-Paymaster hinzugefügt werden kann.
getSupportedTokensRuft die Liste der für Gebührenzahlungen unterstützten Token ab.
signAndSendTransactionSigniert eine Transaktion und sendet sie sofort an das Solana-Netzwerk.
signTransactionSigniert eine Transaktion mit dem Kora-Fee-Zahler, sofern die Transaktion die erforderliche Zahlung an den Fee-Zahler enthält, ohne sie zu senden.
transferTransactionErstellt eine Token-Transfer-Transaktion mit Kora als Fee-Zahler.

Anfrage-Format

Alle Anfragen folgen dem JSON-RPC 2.0-Standard:

{
"jsonrpc": "2.0",
"id": 1,
"method": "methodName",
"params": {}
}

Antwort-Format

Erfolgreiche Antworten:

{
"jsonrpc": "2.0",
"id": 1,
"result": {}
}

Fehlerantworten:

{
"jsonrpc": "2.0",
"id": 1,
"error": {
"code": -32600,
"message": "Invalid request"
}
}

Is this page helpful?

Inhaltsverzeichnis

Seite bearbeiten

Verwaltet von

© 2026 Solana Foundation.
Alle Rechte vorbehalten.
Verbinden Sie sich