Truffle
HDWalletProvider (truffle-config.js) 中的 infura.io 秘密配置
我為我在 infura 的項目設定了一個秘密。
這是我的 truffle-config.js 文件:
module.exports = { networks: { ... ropsten: { provider: new HDWalletProvider(mnemonic, "https://ropsten.infura.io/xxxxx"), network_id: 3 } } };
我的問題是:我在哪裡可以把秘密放在這個配置文件中。我已經閱讀了很多文件/教程,但沒有任何關於這個秘密的內容。
非常感謝
經過反複試驗,我找到了一種方法來完成這項工作。不確定這是唯一的方法還是最好的方法,但它是這樣的:
const provider = new HDWalletProvider(process.env.WALLET_MNEMONIC, `https://:${process.env.PROVIDER_SECRET}@rinkeby.infura.io/v3/${process.env.PROVIDER_ID}`); const web3 = new Web3(provider);
:
注意秘密之前和之後是如何存在的@
。這是有效的,因為 Infura 期望這是一個基本身份驗證,沒有使用者名,只有密碼,這是秘密。
您應該能夠使用 .env 文件之類的東西來保護您的項目機密並使其不被看到。或者,您可以採取類似於該使用者為他們的