Web3js

嘗試使用 ethereum-tx 通過網路瀏覽器發送簽名交易

  • October 29, 2018

我正在使用 web3 v1.0 和 Infura.io 簽署和發送交易。我已經設置了一個腳本來執行 TX,但似乎無法讓 ethereum-tx 在瀏覽器中連接。

<script src="https://cdn.jsdelivr.net/gh/ethereum/web3.js@1.0.0-beta.34/dist/web3.min.js"></script>
<script src="js/ethereum-tx.js"></script>

我從 github 下載 ethereum-tx.js 並參考,但不斷收到錯誤 TX 未定義。

var transaction = new TX(txData);

ethereum-tx 在瀏覽器中不起作用嗎?執行 npm install 後,它可以在本地電腦上執行。

這是我正在使用的下載連結-

https://github.com/ethereumjs/browser-builds/blob/master/dist/ethereumjs-tx/ethereumjs-tx-1.3.3.min.js

我看到兩個元素可以幫助解決您的問題:

  • 你打電話new TX(txData)而不是推薦的方式new EthereumTx(txParams)。現在,這可能是您對變數進行簡單的不同命名,但堅持標准通常有助於調試。
  • 此外,ethereumjs-tx依賴於一些 JS ES6 功能,瀏覽器並不總是支持這些功能。因此,您可以使用所謂的shims來修補瀏覽器缺失的功能。ethereumjs-tx特別是,有一個免責聲明,您應該考慮使用這個shim

希望這可以幫助!

引用自:https://ethereum.stackexchange.com/questions/61344