Skip to Content
dApps
Auf dieser Seite

wallet_switchEthereumChain

Fordert die Wallet auf, zur angegebenen Chain zu wechseln. Wenn die Chain noch nicht in der Wallet konfiguriert ist, wird ein Fehler ausgelöst.


Parameter

Array mit einem einzelnen Objekt:

FeldTypErforderlichBeschreibung
chainIdstringJaChain-ID (Hex-Zeichenfolge mit 0x-Präfix)

Rückgabe

null bei Erfolg


Beispiel

try { await window.$onekey.ethereum.request({ method: 'wallet_switchEthereumChain', params: [{ chainId: '0x89' }] // Polygon }) console.log('Switched to Polygon') } catch (error) { if (error.code === 4902) { // Chain not added, try adding it await window.$onekey.ethereum.request({ method: 'wallet_addEthereumChain', params: [chainConfig] // Define the full configuration for this chain first. }) await window.$onekey.ethereum.request({ method: "wallet_switchEthereumChain", params: [{ chainId: "0x89" }] }) } else { throw error } }

Häufige Chain-IDs

ChainChain-ID (Hex)Chain-ID (Dezimal)
Ethereum0x11
Polygon0x89137
BSC0x3856
Arbitrum0xa4b142161
Optimism0xa10
Base0x21058453
Avalanche0xa86a43114

Fehler

CodeNachrichtBeschreibung
4001Nutzer hat die Anfrage abgelehntNutzer hat den Wechsel abgelehnt
4902Unbekannte Chain-IDChain nicht in der Wallet konfiguriert

Hinweise

  • Wenn die Chain nicht konfiguriert ist, verwenden Sie wallet_addEthereumChain zuerst
  • Der Nutzer muss den Wechsel möglicherweise genehmigen
  • Auf das Ereignis chainChanged reagieren, um den Abschluss des Wechsels zu erkennen
  • Spezifiziert durch EIP-3326 
window.$onekey.ethereum.on('chainChanged', (chainId) => { console.log('Chain changed to:', chainId) // Recommended: reload the page window.location.reload() })
Zuletzt aktualisiert am