问题 请求一次API控制器或
onMessage回调会执行两次。这个是由于两次请求的url是不同的
案例代码
<?php
/**
* @desc 小常识
* @author Tinywan(ShaoBo Wan)
*/
declare(strict_types=1);
require_once __DIR__ . '/../../vendor/autoload.php';
use Workerman\Connection\TcpConnection;
use Workerman\Protocols\Http\Request;
use Workerman\Worker;
$worker = new Worker('http://0.0.0.0:8288');
$worker->onMessage = function (TcpConnection $connection, Request $request) {
var_dump($request->uri());
$connection->send('hello');
};
Worker::runAll();
访问 通过浏览器请求访问
http://127.0.0.1:8288/?name=Tinywan
打印结果
string(14) "/?name=Tinywan"
string(12) "/favicon.ico"
可以很清楚看到多了一次请求图标 /favicon.ico
方案 如何避免多次请求呢
通过curl请求,就会只输出一条记录啦!
curl http://127.0.0.1:8288/?name=Tinywan