JavaScript და TypeScript
ამჟამინდელი JavaScript SDK არის @iroha/iroha-js პაკეტი Iroha წყარო ხეში. ეს არის Node.js-პირველი SDK for Torii, Norito builders, signing, pagination, Connect previews, and Kagemusha command transport.
შენება წყაროდან
პაკეტი ამჟამად არ არის ხელმისაწვდომი საჯარო npm რეესტრიდან. შეიქმნას იგი იმავე pinned Iroha წყაროს რევიზიიდან, როგორც კვანძი თქვენ მიზნად:
git clone https://github.com/hyperledger-iroha/iroha.git
cd iroha/javascript/iroha_js
npm install
npm run build:native
npm run build:distადგილობრივი ნაგებობა დაფარავს cargo build -p iroha_js_host და აღწერს პლატფორმის სპეციფიკური შემოწმების რაოდენობას, რომელიც გამოიყენება SDK სტარტაპზე. წყარო ნაგებობის ადგილებში, რომლებიც შეამოწმეს მასპინძელი native/. შეადგინეთ IROHA_JS_NATIVE_DIR მხოლოდ ცალკე აშენებული, შემოწმების თანხით დადასტურებული მასპინძლის განზრახ მიწოდებისას. პაკეტი არის ESM - მხოლოდ; CommonJS-დან გამოიყენეთ დინამიური import().
სწრაფი დასაწყისი
import { ToriiClient } from "@iroha/iroha-js/torii";
import { generateKeyPair } from "@iroha/iroha-js/crypto";
const torii = new ToriiClient("http://127.0.0.1:8080", {
authToken: "dev-token",
});
const keys = generateKeyPair();
console.log(keys.publicKey);შეეცადეთ Taira მხოლოდ წაკითხვა
გამოიყენეთ ჩაშენებული fetch Node.js 24-ში, რათა შეამოწმოთ Taira ხელმოწერისა და Norito ტრანზაქციის კოდის დამატებამდე:
const root = "https://taira.sora.org";
const status = await fetch(`${root}/status`).then((res) => res.json());
console.log({
blocks: status.blocks,
queueSize: status.queue_size,
peers: status.peers,
});
const domains = await fetch(`${root}/v1/domains?limit=5`).then((res) =>
res.json(),
);
console.log(domains.items.map((domain) => domain.id));
const assets = await fetch(`${root}/v1/assets/definitions?limit=5`).then((res) =>
res.json(),
);
for (const asset of assets.items) {
console.log(asset.id, asset.name, asset.total_quantity);
}შეინახეთ იგი taira-readonly.mjs, შემდეგ გაუშვით:
node taira-readonly.mjsგადადით SDK ხელმოწერილ ზარებზე მხოლოდ მას შემდეგ, რაც ეს წაკითხვა-მხოლოდ შემოწმებები მუშაობს. საჯარო Taira შეიძლება დროებით დაბრუნდეს შეჯერებული რიგის ან კარიბჭე შეცდომა, ასე რომ შეინახეთ ცოცხალი ქსელის ტესტები opt-in in CI.
სასარგებლო ქვემავალიანი იმპორტი:
import { ToriiClient } from "@iroha/iroha-js/torii";
import { noritoEncodeInstruction } from "@iroha/iroha-js/norito";
import { generateKeyPair } from "@iroha/iroha-js/crypto";მხოლოდ ბრაუზერისთვის Connect bootstrap- ისთვის, გამოიყენეთ @iroha/iroha-js/connect-browser ნაცვლად Node-first ToriiClient ზედაპირის იმპორტის.
ადგილობრივი საფინანსო ანაზღაურება
JavaScript და TypeScript აპლიკაციებში შეიძლება გამოყენებულ იქნას ადგილობრივი საფარდნო კონტრაქტები Kotodama ხელშეკრულებების მეშვეობით. შეადგინეთ საფარდო მასპინძელი მოწოდებები @iroha/iroha-js/kotodama-compiler; პირდაპირი ადგილობრივი ოდენობა ტრანზაქციის შემქმნელები ამჟამად არ არიან გამოფენილი JavaScript SDK. იხილეთ Native Asset Escrow ესკროვის მასპინძელი მოწოდების მაგალითისთვის.
ამჟამინდელი მოცულობა
SDK ორიენტირებულია:
- Torii HTTP და WebSocket დამხმარეები
- Norito ტრანზაქციების და ინსტრუქციის შემქმნელები
- Kotodama კომპილაცია, მათ შორის საფარდობო მასპინძელი მოწოდების ნაგებობები
- Ed25519 ხელმოწერა და საკვანძო თაობა
- პაჟინაციის და განმეორებითი გამოცდის დამხმარეები
- ბრაუზერის bootstrap დამხმარეების დაკავშირება
- კაგემუშას მზაობა, დამატება, გადახდა და ექსპლუატაციის სტატუსის ტრანსპორტის დამხმარეები
წინსავალი რეფერენციები
javascript/iroha_js/README.mdjavascript/iroha_js/package.json