想問問大神,Cookie在Workerman中怎么獲取,好像試了很多方法都不能獲取?;蛘咛峁┮粋€可以驗(yàn)證登錄的方法也行
自問自答:https://segmentfault.com/q/1010000008010925?_ea=1529407
這個是不能使用的。
首先你要搞清楚
cookie和session的原理。cookie和session都是需要通過http協(xié)議請求頭來創(chuàng)建的,也就是說需要瀏覽器發(fā)起創(chuàng)建。設(shè)置cookie也會涉及到域那些,所以在cli下是不能使用
自問自答:(自己想)
直接onconnect(這里正如手冊上面說的,基本用不了onconnect)后,發(fā)送服務(wù)端登錄信息,如:
{'type':'login','token':'123456789456123456789'}然后讓服務(wù)端在onmessage上驗(yàn)證用戶登錄信息。
我認(rèn)為 “那篇segmentfault參考” 說法欠妥:
//客戶端
$ws_client->onConnect = function($connection){
$connection->wsHttpHeader = array(
'Cookie' => 'k1=v1',
);
};?//服務(wù)端
$ws_worker->onConnect = function($connection){
$connection->onWebSocketConnect = function($connection , $http_header){
print_r($_COOKIE);
};
};