Maison  >  Article  >  interface Web  >  web3.js ajoute les étapes de la méthode eth.getRawTransactionByHash(txhash)

web3.js ajoute les étapes de la méthode eth.getRawTransactionByHash(txhash)

亚连
亚连original
2018-05-30 10:20:102568parcourir

Cet article présente principalement les étapes d'ajout de la méthode eth.getRawTransactionByHash (txhash) à web3.js. Les amis dans le besoin peuvent se référer à

eth_getRawTransactionByHash

https://ethereum. . stackexchange.com/questions/7473/get-raw-transaction-from-hash

Il existe une méthode "non documentée" eth_getRawTransactionByHash de JSON-RPC

curl -H "Content-Type: application/json" -X POST --data \
&#39;{"jsonrpc":"2.0","method":"eth_getRawTransactionByHash","params":["<TX_HASH>"],"id":1}&#39; http://localhost:8545
<TX_HASH> - transaction id

1. Recherchez le fichier types.d.ts sous web3 sous le projet node_modules

Eth

Ajoutez une méthode à la classe

 getRawTransaction(hash: string, cb?: Callback<TransactionRaw>): Promise<TransactionRaw>

Ajouter la définition TransactionRaw

export declare interface TransactionRaw {
 raw: string
}

2. Recherchez index.js

methods={}

Ajouter une méthode

new Method({
   name: &#39;getRawTransaction&#39;,
   call: &#39;eth_getRawTransactionByHash&#39;,
   params: 1,
   inputFormatter: [null],
   outputFormatter: formatter.outputTransactionRawFormatter
  }),

3. Sous le projet node_modules, recherchez formatters.js

dans web3-core-helpers et ajoutez outputTransactionRawFormatter et ajoutez également le

/**
 * Formats the output of a transaction raw value
 *
 * @method outputTransactionRawFormatter
 * @param {Object} tx
 * @returns {Object}
*/
var outputTransactionRawFormatter = function (tx){
 return tx;
};
module.exports = {
 inputDefaultBlockNumberFormatter: inputDefaultBlockNumberFormatter,
 inputBlockNumberFormatter: inputBlockNumberFormatter,
 inputCallFormatter: inputCallFormatter,
 inputTransactionFormatter: inputTransactionFormatter,
 inputAddressFormatter: inputAddressFormatter,
 inputPostFormatter: inputPostFormatter,
 inputLogFormatter: inputLogFormatter,
 inputSignFormatter: inputSignFormatter,
 outputBigNumberFormatter: outputBigNumberFormatter,
 outputTransactionFormatter: outputTransactionFormatter,
 outputTransactionRawFormatter: outputTransactionRawFormatter,
 outputTransactionReceiptFormatter: outputTransactionReceiptFormatter,
 outputBlockFormatter: outputBlockFormatter,
 outputLogFormatter: outputLogFormatter,
 outputPostFormatter: outputPostFormatter,
 outputSyncingFormatter: outputSyncingFormatter
};

correspondant. vers module.exports Ce qui précède, c'est moi, je l'ai compilé pour tout le monde, j'espère qu'il sera utile à tout le monde à l'avenir.

Articles connexes :

Exemples de redirection dynamique de routage et de garde de navigation de Vue

JS implémenté en tant qu'éléments créés dynamiquement Ajouter une opération d'événement exemple

Introduction à la séquence d'appel des fonctions dans vue

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn