|
|
@@ -11,6 +11,7 @@
|
|
|
* @link http://www.workerman.net/
|
|
|
* @license http://www.opensource.org/licenses/mit-license.php MIT License
|
|
|
*/
|
|
|
+
|
|
|
use \Workerman\Worker;
|
|
|
use \Workerman\WebServer;
|
|
|
use \GatewayWorker\Gateway;
|
|
|
@@ -37,25 +38,27 @@ $gateway->registerAddress = '127.0.0.1:1238';
|
|
|
// 心跳间隔
|
|
|
$gateway->pingInterval = 10;
|
|
|
// 心跳数据
|
|
|
-$gateway->pingData = '{"message_type":"ping"}';
|
|
|
+$gateway->pingData = '{"type":"ping"}';
|
|
|
+
|
|
|
|
|
|
-<<<<<<< HEAD
|
|
|
-/*
|
|
|
-=======
|
|
|
->>>>>>> 0f5d31b38816e57e85443225e6fc57cdd78c1920
|
|
|
// 当客户端连接上来时,设置连接的onWebSocketConnect,即在websocket握手时的回调
|
|
|
-$gateway->onConnect = function($connection)
|
|
|
-{
|
|
|
- $connection->onWebSocketConnect = function($connection , $http_header)
|
|
|
- {
|
|
|
- $apiToken = md5('Customer-Service'.strtotime(date('Y-m-d')).$_SERVER['HTTP_ORIGIN']);
|
|
|
+$gateway->onConnect = function ($connection) {
|
|
|
+ $connection->onWebSocketConnect = function ($connection, $http_header) {
|
|
|
+ $apiToken = md5('Customer-Service' . strtotime(date('Y-m-d')) . $_SERVER['HTTP_ORIGIN']);
|
|
|
//echo $apiToken."/".$_GET['apiToken'];
|
|
|
$_SESSION['userAgent'] = $_SERVER['HTTP_USER_AGENT'];
|
|
|
$_SESSION['origin'] = $_SERVER['HTTP_ORIGIN'];
|
|
|
+ $getToken = isset($_GET['apiToken']) ? $_GET['apiToken'] : '';
|
|
|
|
|
|
- if ($_GET['apiToken'] !== $apiToken) {
|
|
|
- $connection->close();
|
|
|
+ if ($getToken !== $apiToken) {
|
|
|
+ //$connection->close();
|
|
|
+ // return;
|
|
|
}
|
|
|
+ $_SESSION['remotip'] = $connection->getRemoteIp();
|
|
|
+ $_SESSION['remotport'] = $connection->getRemotePort();
|
|
|
+ $_SESSION['userAgent'] = $_SERVER['HTTP_USER_AGENT'];
|
|
|
+ $_SESSION['origin'] = $_SERVER['HTTP_ORIGIN'];
|
|
|
+
|
|
|
// 可以在这里判断连接来源是否合法,不合法就关掉连接
|
|
|
// $_SERVER['HTTP_ORIGIN']标识来自哪个站点的页面发起的websocket链接
|
|
|
/*if($_SERVER['HTTP_ORIGIN'] != 'http://kedou.workerman.net')
|
|
|
@@ -68,8 +71,7 @@ $gateway->onConnect = function($connection)
|
|
|
};
|
|
|
|
|
|
// 如果不是在根目录启动,则运行runAll方法
|
|
|
-if(!defined('GLOBAL_START'))
|
|
|
-{
|
|
|
+if (!defined('GLOBAL_START')) {
|
|
|
Worker::runAll();
|
|
|
}
|
|
|
|