我是在rospten网络中执行此操作的,但是当我在私有奇偶校验网络中使用它时,会得到交易哈希,但是无法在资源管理器中搜索到它:
const Web3 = require('web3'); const EthereumTx = require('ethereumjs-tx')。Transaction;
const url = 'https://xxx.ccc.com/rpcapi';
const abi = [
]; // ERC20 token abi
const contract_address = '0x60745d8c2810be2a1176ddb2e6d2a6e6227bbd79';
const web3 = new Web3(new Web3.providers.HttpProvider(url))
const contract = new web3.eth.Contract(abi, contract_address);
const recipient = '0x4b346650EA60D22583c9e47a44b49120aE263828';
const amount = 1;
const sender = '0xC6b250Dd4dD3372C6602200C78D900818627eC8d';
web3.eth.getTransactionCount(sender).then(count =>{
const data = contract.methods.transfer(recipient, amount).encodeABI();
const rawTx = {
"from": sender,
"nonce": "0x" + count.toString(16),
"gasPrice": "0x09184e72a000",
"gasLimit": "0x30000",
"to": contract_address,
"value": "0x0", // Indication that we are not sending any ethers but our own tokens
"data": data,
"chainId": 0x9898
};
const privKey = 'xxx';
const privKeyBuffer = Buffer.from(privKey, 'hex');
const tx = new EthereumTx(rawTx);
tx.sign(privKeyBuffer);
const serializedTx = tx.serialize();
const singnedTransaction = '0x' + serializedTx.toString('hex');
web3.eth.sendSignedTransaction(singnedTransaction, (err, txHash) => {
if (err) {
console.error(err)
return
}
console.log(txHash)
})
});