Auf dieser Seite
Erste Schritte
Verbinden Sie den Provider vor dem Signieren. Die Transaktionsbeispiele verwenden Felder im Stil von algosdk 2: from/to; beachten Sie die installierte SDK-Hauptversion. algodClient, Adressen und gruppierte Transaktionen müssen vor der Ausführung der Ausschnitte vorbereitet werden. Browserbeispiele mit Buffer benötigen einen ausdrücklichen Import von buffer oder einen gleichwertigen Base64-Encoder.
Erfahren Sie, wie Sie Algorand mit dem Provider von OneKey erkennen, verbinden und damit interagieren.
Der Algorand-Provider von OneKey unterstützt sowohl ältere als auch ARC-0001-konforme Schnittstellen.
Provider erkennen
// Detect OneKey Algorand provider
const provider = window.$onekey?.algo
if (!provider) {
throw new Error('OneKey Algorand provider not detected')
}
// Check compatibility
console.log('isOneKey:', provider.isOneKey) // trueVerbinden (Legacy-API)
const { address } = await provider.connect()
console.log('Connected:', address)
// Check connection status
console.log('isConnected:', provider.isConnected)
console.log('Address:', provider.address)Aktivieren (ARC-0001)
const result = await provider.enable({
genesisID: 'mainnet-v1.0',
genesisHash: 'wGHE2Pwdvd7S12BL5FaOP20EGYesN73ktiC1qzkkit8=',
})
console.log('Accounts:', result.accounts)
console.log('Genesis Hash:', result.genesisHash)Trennen
await provider.disconnect()
console.log('Disconnected')Ereignisbehandlung
Auf Kontoänderungen reagieren
provider.on('accountChanged', (address) => {
if (address) {
console.log('Account changed:', address)
} else {
console.log('Disconnected')
}
})Auf Verbindungen reagieren
provider.on('connect', ({ address }) => {
console.log('Connected:', address)
})
provider.on('disconnect', () => {
console.log('Disconnected')
})Mit dem Algod-Client verwenden
Client vom Provider abrufen
// Get pre-configured clients
const algodTransport = await provider.getAlgodv2Client()
const indexerTransport = await provider.getIndexerClient()
// These are BaseHTTPClient transports, not Algodv2 or Indexer SDK instances.
// Use the manual setup below for SDK methods such as status().do().Manuelle Client-Einrichtung
import algosdk from 'algosdk'
const algodClient = new algosdk.Algodv2(
'', // Token (not needed for public nodes)
'https://mainnet-api.algonode.cloud',
''
)
const indexerClient = new algosdk.Indexer(
'',
'https://mainnet-idx.algonode.cloud',
''
)Zuletzt aktualisiert am