gatewayclient部分方法能够使用部分无法执行,有什么好的办法解决吗?

花生里的地豆

问题描述

laravel框架 下载了workerman/gatewayclient": "^3.0",在类中引入后,有些方法能够使用有些出现错误

程序代码或配置

<?php

namespace App\Http\Controllers\WxAPi;
use App\Http\Controllers\ApiController;
use GatewayClient\Gateway;
use  Illuminate\Http\Request;
class WebSocketChecker extends ApiController
{
    public function bind(Request $request){
        Gateway::$registerAddress = 'websocket://127.0.0.1:6001';
        $member_id=$request->input('member_id');
        $client_id=$request->input('client_id');
//        $data=array(
//            'type'=>'say',
//            'avatar'=>'111111111',
//            'name'=>'22222222',
//            'content'=>'进入聊天室',
//            'time'=>date("y-m-d H:i:S",time())
//        );
//        print_r($client_id.'------------------');
//        print_r($member_id);
        print_r($member_id);
        print_r(Gateway::bindUid($client_id, $member_id).'------------');
        print_r(Gateway::getUidByClientId($client_id));
        Gateway::sendToClient($client_id, "Hello $member_id 进入聊天室\r\n");
//      Gateway::sendToUid($member_id,"Hello进入聊天室\r\n");
//      Gateway::getClientIdByUid($member_id)
//      Gateway::sendToAll("$client_id login\r\n");
    }

}

运行配置信息
截图

示例
截图
失败示例(去掉下边三条注释出现bug)
截图
浏览器访问效果
截图

220 1 0
1个回答

walkor

Gateway::$registerAddress 写错了,不是gateway的端口,更不是websocket协议,看下文档

🔝