Auf dieser Seite
API-Referenz
Referenz der Methoden und Typen des Sui-Providers von OneKey.
Methoden
| Methode | Beschreibung |
|---|---|
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
| Chain | Kennung |
|---|---|
| Mainnet | sui:mainnet |
| Testnet | sui:testnet |
| Devnet | sui:devnet |
Ereignisse
| Ereignis | Callback-Parameter | Beschreibung |
|---|---|---|
accountChanged | { address, publicKey } | null | Konto geändert |
networkChange | network: string | null | Netzwerk geändert |
connect | address: string | Verbunden |
disconnect | - | Getrennt |
Fehlercodes
| Code | Beschreibung |
|---|---|
| 4001 | Nutzer hat die Anfrage abgelehnt |
| 4100 | Nicht autorisiert |
| -32603 | Interner Fehler |
Zuletzt aktualisiert am