Skip to Content
dApps

API-Referenz

Referenz der Methoden und Typen des Sui-Providers von OneKey.


Methoden

MethodeBeschreibung
hasPermissions()Prüfen, ob verbunden
requestPermissions()Verbindung anfordern
disconnect()Wallet trennen
getAccounts()Verbundene Konten abrufen
getActiveChain()Aktuelle Chain abrufen
isConnected()Verbindungsstatus prüfen
signAndExecuteTransactionBlock(input)Transaktion signieren und ausführen
signTransactionBlock(input)Transaktion nur signieren
signAndExecuteTransaction(input)Signieren und ausführen (neue API)
signTransaction(input)Transaktion signieren (neue API)
signMessage(input)Nachricht signieren (Legacy)
signPersonalMessage(input)Persönliche Nachricht signieren
onAccountChange(callback)Auf Kontoänderungen reagieren
onNetworkChange(callback)Auf Netzwerkänderungen reagieren

Typen

Wallet-Konto

getAccounts() gibt AccountInfo[] zurück. Signiereingaben benötigen das Wallet-Standard-Objekt WalletAccount, dessen publicKey ein Byte-Array ist und das auch chains und features enthält. Rufen Sie es über standard:connect ab; wandeln Sie AccountInfo nicht per Typumwandlung in WalletAccount um.

import type { WalletAccount, IdentifierString } from '@mysten/wallet-standard' import type { Transaction } from '@mysten/sui/transactions' // provider.getAccounts() interface AccountInfo { address: string publicKey: string // Hex-encoded public key }

Eingabe zum Signieren und Ausführen eines Transaktionsblocks

Der aktuelle injizierte Provider leitet options nicht weiter in signAndExecuteTransactionBlock. Fragen Sie den zurückgegebenen Digest mit einem Sui-Client auf derselben Chain ab, um Auswirkungen, Ereignisse oder Objektänderungen anzufordern.

interface SignAndExecuteTransactionBlockInput { account: WalletAccount chain: IdentifierString transactionBlock: Transaction options?: { showEffects?: boolean showEvents?: boolean showObjectChanges?: boolean showBalanceChanges?: boolean showInput?: boolean showRawInput?: boolean } }

Ausgabe beim Signieren eines Transaktionsblocks

interface SignTransactionBlockOutput { transactionBlockBytes: string signature: string }

Eingabe zum Signieren einer persönlichen Nachricht

interface SignPersonalMessageInput { account: WalletAccount chain?: IdentifierString message: Uint8Array }

Ausgabe beim Signieren einer persönlichen Nachricht

interface SignPersonalMessageOutput { signature: string bytes: string }

Unterstützte Chains

ChainKennung
Mainnetsui:mainnet
Testnetsui:testnet
Devnetsui:devnet

Ereignisse

EreignisCallback-ParameterBeschreibung
accountChanged{ address, publicKey } | nullKonto geändert
networkChangenetwork: string | nullNetzwerk geändert
connectaddress: stringVerbunden
disconnect-Getrennt

Fehlercodes

CodeBeschreibung
4001Nutzer hat die Anfrage abgelehnt
4100Nicht autorisiert
-32603Interner Fehler
Zuletzt aktualisiert am