我对ReactPHP很陌生,但我试图实现一些起初看起来有点棘手的东西。我已经设置了一个php脚本,它充当服务器,通过套接字监听连接。建立连接后,它会向连接发送一个字符串。我们称之为server.php
,它看起来如下:
use React\Socket\ConnectionInterface;
$loop = React\EventLoop\Factory::create();
$socket = new React\Socket\Server('127.0.0.1:8080', $loop);
$socket->on('connection', function(ConnectionInterface $connection){
$connection->write('random string should come here');
});
echo "Listening on {$socket->getAddress()}\n";
$loop->run();
此文件将作为服务器上的守护程序在后台运行,等待连接,以便它可以将字符串返回给它们。现在,我想要实现的是编写一个客户端文件,它连接到这个"服务器",并等待,直到它得到他的响应。当它得到响应时,应该echo
响应然后退出。 (关闭连接和文件)
我认为我可以做到这一点,创建一些我称之为假循环的东西,客户端进入该循环,然后循环直到找到响应,然后退出循环。但是,有没有更简单的方法来实现这一目标?
因为以下情况,我需要这个: 我的服务器将接受一个密码,我将在初始化时给出密码,它将解密一些API信息。当有人连接到现在可以访问API的服务器时,它应该从它访问的API返回一些数据。 API的可见性可以打开,但是没有其他人能够在API上执行写命令,因为我不能为它创建单独的密钥,一个用于读取数据(应该是公共的),一个用于执行数据(不应该是公共的),这是我能想象的唯一场景,它仍然保证数据写入API的安全。