問題描述如何在thinkphp下 后臺作為客戶端用workerman向遠程服務器發送socket長鏈接問題出現的環境背景及自己嘗試過哪些方法thinkphp5.1 封裝的server 中 沒有 AsyncTcpConnection類 求指點相關代碼// 請把代碼文本粘貼到下方(請勿用圖片代替代碼)/**Worker控制器擴展類*/abstract class Server{protected $worker;protected $socket = '';protected $protocol = 'http';protected $host = '0.0.0.0';protected $port = '2346';protected $option = [];protected $context = [];protected $event = ['onWorkerStart', 'onConnect', 'onMessage', 'onClose', 'onError', 'onBufferFull', 'onBufferDrain', 'onWorkerReload', 'onWebSocketConnect'];你期待的結果是什么?實際看到的錯誤信息又是什么?如何能夠調用AsyncTcpConnection類 作為客戶端 發送遠程鏈接需要保持長連接
2 回答

largeQ
TA貢獻2039條經驗 獲得超8個贊
不明白需要實現的功能。
如果只是發送socket數據,則直接使用php創建一個socket連接發送即可。
如果說,想要在web端,調用workerman連接遠程socket服務器的話,其實還不如直接在socket服務器開一個http服務。因為web端本身就是一個短連接。用戶點擊的http請求結束之后就結束了。

皈依舞
TA貢獻1851條經驗 獲得超3個贊
如果遠程服務器http服務不方便,則在本地用wokerman 守護進程跑一個客戶端,web端用http服務調用客戶端發送socket請求。這其實是靠wokerman的客戶端維持長鏈接
AsyncTcpConnection 在vendor/workeman/Connection
文件夾下,命名空間Workerman\Connection\AsyncTcpConnection
- 2 回答
- 0 關注
- 4116 瀏覽
添加回答
舉報
0/150
提交
取消