مرکزی مواد پر جائیں
iCute Financeڈیجیٹل اثاثے · مارکیٹ کا جائزہ
اردو
تحقیقی فہرست
iCute Finance

بنیادی نیویگیشن

بنیادی نیویگیشن

ڈیجیٹل اثاثے · مارکیٹ کا جائزہ

ہدایت فال بیک نہیں ملا۔ خرابی نمبر: 101۔ خرابی کا پیغام: فال بیک فنکشنز معاون نہیں ہیں

آپ کو اپنی ٹرانزیکشن کے ڈیٹا میں instruction discriminator فراہم کرنا ہوگا جیسا کہ Ademola نے ذکر کیا ہے۔ آپ یہ کر سکتے ہیں کہ instruction discriminator حاصل کریں پھر اسے اپنے ڈیٹا کے پہلے 8 bytes میں شامل کریں۔ Rust میں Instruction Discriminator حاصل کریں 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"));

Typescript میں Discriminator Instruction حاصل کریں 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 global ہونا چاہیے یہاں Typescript میں ایک مثال ہے // Craft the InstructionBuffer const ixBuffer = sighash('global','initialize');

const instructionBuffer = Buffer.concat([ ixBuffer, // namespace+method_name OtherBuffer, // Other Data that you want to pass to the instruction. ])

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

ماخذ دیکھیں CC BY-SA 4.0