我創(chuàng)建了一個(gè)Engine
類繼承自PHPSocketIO\Engine\Engine
然后重寫了其中的handleRequest
方法來(lái)處理自定義的請(qǐng)求。 但是即使我在自定義請(qǐng)求部分直接$res.end("ok")
后,也無(wú)法接收到后續(xù)請(qǐng)求.
代碼如下,復(fù)現(xiàn)方法為:
在postman
中發(fā)一個(gè)post請(qǐng)求host/api/xxx
,等返回 ok 之后在同一個(gè)標(biāo)簽頁(yè)繼續(xù)發(fā)送請(qǐng)求 無(wú)論是post還是get,頁(yè)面會(huì)一直是sending request的狀態(tài), 啟動(dòng)worker的控制臺(tái)中也一直沒(méi)有輸出, 多次get請(qǐng)求則不存在這個(gè)問(wèn)題
class Engine extends \PHPSocketIO\Engine\Engine{
/**
* @param Request $req
* @param Response $res
*/
public function handleRequest($req, $res)
{
echo('handleRequest');
$this->prepare($req);
$req->res = $res;
$res->writeHead(200, '', []);
$res->end('ok'); // 這里直接end做測(cè)試
return;
$this->handleApi($req, $res);
}
/**
* 處理api請(qǐng)求
*/
public function handleApi(Request $req, Response $res)
{
# code...
}
}