{"id":25423375,"url":"https://github.com/jxy918/swoole-proxy","last_synced_at":"2025-10-31T14:30:41.307Z","repository":{"id":255437233,"uuid":"116249908","full_name":"jxy918/swoole-proxy","owner":"jxy918","description":"websocket协议转tcp，swoole实现前端代理服务器(websocket), 后端服务器是TCP","archived":false,"fork":false,"pushed_at":"2019-08-21T07:53:31.000Z","size":381,"stargazers_count":17,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-09-01T12:38:57.696Z","etag":null,"topics":["php","proxy-server","swoole","swoole-proxy","tcp","websocket-proxy"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jxy918.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-04T11:02:00.000Z","updated_at":"2023-03-07T07:10:51.000Z","dependencies_parsed_at":"2024-08-31T12:38:57.737Z","dependency_job_id":"f8a8e971-221c-4ed0-a35b-5bbed6d723e8","html_url":"https://github.com/jxy918/swoole-proxy","commit_stats":null,"previous_names":["jxy918/swoole-proxy"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jxy918%2Fswoole-proxy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jxy918%2Fswoole-proxy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jxy918%2Fswoole-proxy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jxy918%2Fswoole-proxy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jxy918","download_url":"https://codeload.github.com/jxy918/swoole-proxy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239207416,"owners_count":19599963,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["php","proxy-server","swoole","swoole-proxy","tcp","websocket-proxy"],"created_at":"2025-02-16T22:38:31.002Z","updated_at":"2025-10-31T14:30:39.989Z","avatar_url":"https://github.com/jxy918.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# swoole-proxy\n\n* websocket协议转tcp，swoole实现前端代理服务器(websocket), 后端服务器是TCP\n\n## 一，概述\n\n* 用swoole实现一个websocket代理服务器，代理到后端c++的tcp服务器上， 方便h5游戏开发，主要实现转换协议， 把后端c++的tcp协议转换成swoole的websocket协议。\n \n## 二，示例图\n\n![示例demo](demo.png)\n\n \n## 三，使用\n\n* 1，目录说明：\n\n```\n./c++server c++服务器目录，可跑起来\n./client 客户端交互测试工具\n./ProxyServer.php  代理服务器代码，此代理服务器可以用户代理游戏服务器\n./ProxyServerByCo.php  协程客户端版，代理服务器代码，注意由于此处c++服务器是一问一答，所以可以用\n\n``` \n\n\u003ePS:协程代理服务器，只能用户同步模式服务器，因为协程客户端需要发送请求，能获取到返回结果，如果不返回，会超时报错\n\n* 2，启动服务器 ：\n\n先进c++server目录， 点击可执行文件运行c++服务器， c++服务器（windows版）是一个简单echo服务器， 你发送什么样的数据会原样返回，跑起来后会到c++服务器端口：6080\n\n代理服务器启动：配置代理服务器要代理的后端c++服务器的ip和端口, 如果是想跑协程版， 请自行修改一下gameproxy.sh里的代码，把ProxyServer.php替换成ProxyServerByCo.php\n\n```\ngameproxy.sh start         启动代理服务器\ngameproxy.sh stop          停止代理服务器\n\n```\n\n客户端：进入client目录，浏览器运行index.html文件，\n       \n\n## 四，联系方式\n\n* qq：251413215, 加qq请输入验证消息：swoole-proxy\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjxy918%2Fswoole-proxy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjxy918%2Fswoole-proxy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjxy918%2Fswoole-proxy/lists"}