我已经成功配置了bitcoind并通过Laravel应用程序将其连接。我现在的问题是,当内部交易产生的新交易发生时,walletnotify不会被触发。
bitcoin.conf
maxconnections=12
rpcuser=user
rpcpassword=pass
test.rpcport=18332
rpcallowip=0.0.0.0/0 --testing purposes
keypool=10000
server=1
testnet=1
txindex=1
walletnotify=/usr/bin/curl http://127.0.0.1/notify/%s
我也尝试过:
walletnotify=curl http://127.0.0.1/notify/%s
路线:
Route::get('/notify', 'HomeController@notify');
控制器:
public function notify($tx) {
$txinfo = Bitcoind::getRawTransaction($tx, true);
$txinfo = $txinfo->get();
.....
}
注意:区块链已同步。我已经从比特币上检查了debug.log,但没有来自walletnotify的错误,或者至少在应运行时没有卷曲。
如果我手动调用该路由并传递一个txid,一切都会顺利进行。
提前感谢您的帮助!
问题已解决!
下面的WalletNotify配置工作正常。
walletnotify=curl http://127.0.0.1/notify/%s
问题是我构建了在HomeController中验证交易的函数,该函数受AUTH中间件保护。在开始进行测试时,我忘记了由laravel身份验证支架创建的HomeController的防护措施。