正在显示
1 个修改的文件
包含
19 行增加
和
17 行删除
| @@ -11,24 +11,26 @@ namespace App\Helper; | @@ -11,24 +11,26 @@ namespace App\Helper; | ||
| 11 | 11 | ||
| 12 | class socket | 12 | class socket |
| 13 | { | 13 | { |
| 14 | - public function socket(){ | ||
| 15 | - // 创建一个Socket | 14 | + public function socket($data){ |
| 15 | + // Socket 服务器的 IP 和端口 | ||
| 16 | + $socketServerIp = '43.154.15.250'; | ||
| 17 | + $socketServerPort = 9555; // 替换为实际端口 | ||
| 18 | + // 创建一个 TCP Socket 客户端 | ||
| 16 | $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); | 19 | $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); |
| 17 | - // 绑定IP地址和端口 | ||
| 18 | - socket_bind($socket, '127.0.0.1', 1213); | ||
| 19 | - // 开始监听连接请求 | ||
| 20 | - socket_listen($socket); | ||
| 21 | - // 接受客户端连接 | ||
| 22 | - $clientSocket = socket_accept($socket); | ||
| 23 | - // 读取客户端发送的数据 | ||
| 24 | - $data = socket_read($clientSocket, 1024); | ||
| 25 | - // 处理数据 | ||
| 26 | - $response = "Hello, Client!"; | ||
| 27 | - $responseLength = strlen($response); | ||
| 28 | - // 发送响应给客户端 | ||
| 29 | - socket_write($clientSocket, $response, $responseLength); | ||
| 30 | - // 关闭Socket连接 | ||
| 31 | - socket_close($clientSocket); | 20 | + if ($socket === false) { |
| 21 | + return response()->json(['error' => 'Socket creation failed']); | ||
| 22 | + } | ||
| 23 | + // 连接到 Socket 服务器 | ||
| 24 | + $result = socket_connect($socket, $socketServerIp, $socketServerPort); | ||
| 25 | + if ($result === false) { | ||
| 26 | + return response()->json(['error' => 'Socket connection failed']); | ||
| 27 | + } | ||
| 28 | + // 发送数据到 Socket 服务器 | ||
| 29 | + socket_write($socket, $data, strlen($data)); | ||
| 30 | + // 从服务器接收数据 | ||
| 31 | + $response = socket_read($socket, 1024); | ||
| 32 | + // 关闭 Socket 连接 | ||
| 32 | socket_close($socket); | 33 | socket_close($socket); |
| 34 | + return response()->json(['response' => $response]); | ||
| 33 | } | 35 | } |
| 34 | } | 36 | } |
-
请 注册 或 登录 后发表评论