IOTA JS Bibliothek

Dies ist die offizielle JavaScript-Client-Bibliothek, mit der Sie Folgendes tun können:

  • Erstellen Sie Transaktionen
  • Transaktionen unterzeichnen
  • Adressen generieren
  • Interagieren Sie mit einem IRI-Node

IOTA JS GitHub-Repository.

Dies ist Beta-Software, daher können Leistungs- und Stabilitätsprobleme auftreten. Bitte melden Sie alle Probleme in unserem Issue Tracker.

Um die Bibliothek verwenden zu können, muss Ihr Computer über eine der folgenden unterstützten Versionen von Node.js verfügen:

  • Nodes JS 10 oder höher. Die empfohlene Version ist das neueste LTS.
  • Node JS 8

Um Bibliothekspakete zu installieren, muss Ihr Computer über einen der folgenden Paketmanager verfügen:

Sie müssen auch eine package.json Datei haben. Erzeugen Sie eine, indem Sie npm init oder yarn init ausführen.

Um die IOTA-JavaScript-Clientbibliothek und ihre Abhängigkeiten zu installieren, können Sie eine der folgenden Optionen verwenden:

  • Installieren Sie die Bibliothek mit npm
npm install @iota/core
  • Installieren Sie die Bibliothek mit Yarn
yarn add @iota/core

Nachdem Sie die Bibliothek installiert haben, können Sie eine Verbindung zu einer IRI-Node herstellen und eine Schnittstelle dazu aufbauen.

Führen Sie folgende Schritte aus, um eine Verbindung zu einem lokalen IRI-Node herzustellen:

import { composeAPI } from '@iota/core'

const iota = composeAPI({
    // Ersetze die Adresse mit der deines IRI Nodes
    // oder verwende 'https://nutzdoch.einfachiota.de'
    provider: 'http://localhost:14265'
})

iota.getNodeInfo()
    .then(info => console.log(info))
    .catch(error => {
        console.log(`Anforderungsfehler: ${error.message}`)
    })

Einzelheiten zu allen verfügbaren API-Methoden finden Sie auf der Referenzseite.

Neben den folgenden Beispielen können Sie sich auch unser Beispielverzeichnis genauer ansehen.

Erstellen und Übertragen von Transaktionen

In diesem Beispiel wird gezeigt, wie Sie eine Transaktion erstellen und an einen IRI-Node senden, indem Sie die prepareTransfers Methode aufrufen und das vorbereitete Bundle an die sendTrytes Methode weiterleiten.

import { composeAPI } from '@iota/core'

const iota = composeAPI({
    ​​​​​​​// Ersetze die Adresse mit der deines IRI Nodes
    // oder verwende 'https://nutzdoch.einfachiota.de'
    provider: 'http://localhost:14265'
})

// Muss zufällig und 81 Trytes lang sein.
const seed = ' your seed here '

// Array von Übertragungen, das die Empfänger der Transfer
// und den in IOTAs übertragenen Wert definiert.
const transfers = [{
    address: ' hier die Empfängeradresse ',
    value: 1000, // 1Ki
    tag: '', // Optionaler tag betehend aus `0-27` Trytes
    message: '' // Optional Nachricht in Trytes
}]

// Tiefe oder wie weit man für den Einstiegspunkt der Tip Selection gehen muss.
const depth = 3

// Schwierigkeit des Proof-of-Works, das benötigt ist um eine Transaktion
// an das Tangle anzuhängen. Minimaler Wert beim Mainnet ist `14`,
// `7` beim Spamnet und `9` beim Devnet und anderen Testnets.
const minWeightMagnitude = 14

// Bereitet ein Bundle vor und signiert es
iota.prepareTransfers(seed, transfers)
    .then(trytes => {
        // Behält die Trytes vor dem Senden an das Netzwerk lokal. Dies ermöglicht
        // Reattachments und verhindert die Wiederverwendung von Schlüsseln,
        // falls die Trytes nicht durch Abfragen des Netzwerks nach dem Broadcasting
        // wiederhergestellt werden können.

        // Macht die Tip Selection, hängt  tip selection, hängt die Transaktionen
        // an das Tangle an und sendet die Trytes zu dem Node.
        return iota.sendTrytes(trytes, depth, minWeightMagnitude)
    })
    .then(bundle => {
        console.log(`Veröffentliche Transaktion mit Tailhash: ${bundle[0].hash}`)
        console.log(`Bundle: ${JSON.stringify(bundle, null, 1)}`)
    })
    .catch(err => {
        // Fehler hier behandeln
    })

Erstellen Sie benutzerdefinierte API-Methoden

1. Installieren Sie einen IRI-HTTP-Client

npm install @iota/http-client

2. Erstellen Sie eine API-Methode

import { createHttpClient } from '@iota/http-client'
import { createGetNodeInfo } from '@iota/core'

const client = createHttpClient({
    provider: 'http://localhost:14265'
})

const getNodeInfo = createGetNodeInfo(client)

Wenn die IOTA-JavaScript-Clientbibliothek für Sie nützlich war und Sie mitmachen möchten, können Sie einen Fehlerbericht, eine Funktionsanforderung oder eine Pull-Anforderung veröffentlichen.

Klonen und booten Sie das Repository auf GitHub

  1. Klicken Sie oben rechts auf die Schaltfläche Fork
  2. Klonen Sie Ihren Fork und wechseln Sie in das Verzeichnis
  3. Bootstrap deine Umgebung
npm run init

In diesem Schritt werden alle Abhängigkeiten heruntergeladen, die Pakete erstellt und verknüpft. iota.js verwendet Lerna zur Verwaltung mehrerer Pakete. Sie können Ihr Setup jederzeit mit dem Befehl lerna bootstrap neu starten.

Tests ausführen

Nehmen Sie Ihre Änderungen für ein einzelnes Paket oder für mehrere Pakete vor und testen Sie das System, indem Sie Folgendes im Root-Verzeichnis ausführen:

npm test

Um Tests eines bestimmten Pakets auszuführen, wechseln Sie in das Verzeichnis des Pakets und führen dort npm test aus.

Dokumentation aktualisieren

Aktualisieren Sie die Dokumentation bei Bedarf, indem Sie die JSDoc Anmerkungen bearbeiten und npm run docs im Stammverzeichnis ausführen.

Wenn Sie sich in der Community engagieren möchten, Hilfe beim Einrichten benötigen, Probleme mit der Bibliothek haben oder einfach nur IOTA, Distributed Registry Technology (DRT) und IoT mit anderen Personen besprechen möchten, können Sie sich einfach in unserem Discord anmelden.


Anmerkung:

Der Inhalt kann durch die Übersetzung verfälscht sein. Im Zweifel gilt das englische Original von der IOTA Foundation (Quelle).

Quelle: https://docs.iota.org/docs/iota-js/0.1/README).

  • Zuletzt geändert: 2019/02/12 15:30
  • von vrom