我正在尝试使用PHP和Cron从一个现有的帐户使用web3或类似的东西发送以太,有什么关于如何实现这一点的提示吗?
我在SQL表{"address":"0x22b853A8Df90BF9A7e21445C16FBbEaa43e0c307","password":"inu8p","privateKey":"0xb9cabca09e5cbdfb2c953d574bce5b9d837a91ffe1f3817fc6a01da63bf5ff56"}中有JSON。
问题是javascript不能在CRON上执行。Node中是否有可以通过API或其他方式发送POST请求的库?
任何帮助都将不胜感激。
发布于 2018-01-17 05:03:30
你想用PHP发送一个原始的以太事务,所以在你的情况下,我推荐使用php-eth-raw-tx包。
用法非常简单:
$tx = new \EthereumRawTx\Transaction(
\BitWasp\Buffertools\Buffer::hex('d44d259015b61a5fe5027221239d840d92583adb'),
\BitWasp\Buffertools\Buffer::int(1 * 10**18),
);
$raw = $tx->getRaw(\BitWasp\Buffertools\Buffer::hex('b9cabca09e5cbdfb2c953d574bce5b9d837a91ffe1f3817fc6a01da63bf5ff56'));在本例中,您从address 0x22b853A8Df90BF9A7e21445C16FBbEaa43e0c307 (由私钥0xb9cabca09e5cbdfb2c953d574bce5b9d837a91ffe1f3817fc6a01da63bf5ff56标识)向address 0xd44d259015b61a5fe5027221239d840d92583adb发送1.0eth。
您需要做的就是创建一个PHP文件并将其添加到crontab中。
在这里查看更多示例:https://github.com/Domraider/php-eth-raw-tx/tree/master/examples
发布于 2018-01-16 22:48:00
您可以使用geth或其他客户端的远程过程调用服务器。您可以通过web3发送请求到RPC服务器,甚至可以通过node的http模块发送请求,但Web3更简单。
然后,您可以使用一个节点cron模块对此进行调度,如下所示:https://www.npmjs.com/package/cron
您需要确保您使用的任何RPC服务器都是安全设置的,因为存在针对它们的主动扫描和攻击。
下面是部分示例:
//Send some eth every hour
new CronJob('* * * 1 0 0', () => {
//The following arguments are simplified...
web3.eth.sendTransaction({from: "0xc0ffee", to: "0xdeadbeef...", value: "1.0"}, () => {
console.log('transaction sent');
});
}, null, true, 'America/Los_Angeles');https://stackoverflow.com/questions/48283771
复制相似问题