Langkau ke kandungan utama
iCute FinanceASET DIGITAL · PEMERHATIAN PASARAN
Bahasa Melayu
Direktori penyelidikan
iCute Finance

Navigasi utama

Navigasi utama

ASET DIGITAL · PEMERHATIAN PASARAN

InstructionFallbackNotFound. Nombor Ralat: 101. Mesej Ralat: Fungsi fallback tidak disokong

Anda perlu memberikan instruction discriminator pada data transaksi anda seperti yang telah disebut oleh Ademola. Apa yang boleh anda lakukan ialah ambil instruction discriminator kemudian tambahkan pada data anda dalam 8 bytes pertama. Ambil Instruction Discriminator dalam Rust pub fn sighash(namespace: &str, name: &str) -> [u8; 8] { let preimage = format!("{}:{}", namespace, name);

let mut sighash = [0u8; 8]; sighash.copy_from_slice( &anchor_client::anchor_lang::solana_program::hash::hash(preimage.as_bytes()).to_bytes() [..8], ); sighash }

println!("{:?}", sighash("global", "initialize"));

Ambil Discriminator Instruction Dalam typescript function sighash(nameSpace: string, ixName: string): Buffer { let name = snakeCase(ixName); let preimage = ${nameSpace}:${name}; return Buffer.from(sha256.digest(preimage)).slice(0, 8); }

namespace sepatutnya global Berikut adalah contoh dalam Typescript // Craft the InstructionBuffer const ixBuffer = sighash('global','initialize');

const instructionBuffer = Buffer.concat([ ixBuffer, // namespace+method_name OtherBuffer, // Other Data yang anda mahu hantar ke instruction. ])

// Craft the Instruction const transactionInstruction = new TransactionInstruction({ programId: programAddress, data: instructionBuffer, keys : [ ... ] })

Lihat sumber CC BY-SA 4.0