您当前的位置: 首页 > 慢生活 > 程序人生 网站首页程序人生
workerman-websocket协议-websocket协议握手(get,server全局變量(HTTP_ORIGIN))
发布时间:2022-01-15 22:37:08编辑:雪饮阅读()
就是說workerman中其實也支持一些像是傳統架構模式下php可以獲得的一些服務端變量,包括get、server(主要還是請求來源origin等)
服務端如:
<?php
use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';
$ws = new Worker('websocket://0.0.0.0:8181');
$ws->onConnect = function($connection)
{
$connection->onWebSocketConnect = function($connection , $http_header)
{
// 可以在这里判断连接来源是否合法,不合法就关掉连接
// $_SERVER['HTTP_ORIGIN']标识来自哪个站点的页面发起的websocket连接
if($_SERVER['HTTP_ORIGIN'] == 'http://chat.workerman.net')
{
$connection->close();
}
else{
// onWebSocketConnect 里面$_GET $_SERVER是可用的
$arr["get"]=$_GET;
$arr["server"]=$_SERVER;
$connection->send(json_encode($arr));
}
};
};
Worker::runAll();
关键字词:HTTP_ORIGIN,workerman,websocket,get,server,协议,握手
相关文章
- workerman系列之windows環境下多实例多協議共存
- workerman系列之再談socket5代理s5優化
- workerman服務治理優化系列之連接數管理-根据连接数重
- workerman服務治理系列之workerman服务(脚本)自启动(开机
- workerman16进制与2进制字符串的转换(局限有点狭隘,應該
- http反向代理環境下获取真实ip(基於workerman)
- https在反向代理環境下获取真实ip(基於workerman實現)
- 基於workerman實現ws获取真實客戶端ip(反向代理環境下)
- workerman系列之nginx配置反向代理于workerman時候實
- workerman系列之tp5(thinkphp5)日志结合workerman使用