C 实现 WebSocket 服务器
创始人
2025-01-19 19:03:26
0

目录

一、概述

二、基本特征

三、使用案例

1、客户端 HTML 代码

2、服务端 C 代码

四、运行结果


一、概述

        实现 WebSocket 服务器主要参考 RFC 协议。链接如下:

RFC 6455: The WebSocket Protocol (rfc-editor.org)icon-default.png?t=N7T8https://www.rfc-editor.org/rfc/rfc6455.html       具体的实现思路:

        1、实现一个典型的 TCP 服务器。

        2、TCP服务器处理客户端请求时,依据上述文档描述,分三个阶段处理 WS Client 请求(握手阶段、传输阶段、分手阶段)。

        详细代码已上传到 gitcode和github。

项目目录预览 - ws_server - GitCodeicon-default.png?t=N7T8https://gitcode.com/qq_37437983/ws_server/tree/mainAtaoistPriest/ws_server: This is a web socket server implemented with C. (github.com)icon-default.png?t=N7T8https://github.com/AtaoistPriest/ws_server

二、基本特征

1、指定服务器 IP 、Port 和 transmission 阶段的消息回调函数后即可快速启动服务器。

2、内置轻量级日志打印器。

三、使用案例

1、客户端 HTML 代码

          

WebSocket Client

Server:

Message:

2、服务端 C 代码

#include "./src/wbsocket_server.h"  long msg_switch(unsigned char *req, long req_len, unsigned char *res, long res_len) { 	bzero(res, res_len); 	long len = sprintf((char *)res, "Recv %s Successfully", req); 	return len; }  void test_ws_server() { 	logger_init("./log");  	start_server("172.17.83.59", "52323", msg_switch);  	logger_destroy(); }  int main(void) { 	test_ws_server(); 	return 0; }

四、运行结果

        下图是 Web Socket 客户端连接 Web Socket 服务器的通讯过程,包括了连接、请求回复与断开连接。

相关内容

热门资讯

ai代打辅助挂(德扑)辅牌真假... ai代打辅助挂(德扑)辅牌真假(AI)辅牌软件使用(总是真的是有挂)1. ai辅助创建新账号,点击进...
黑科技科技"微扑克辅... 黑科技科技"微扑克辅助哪里有卖!外挂透明挂辅助助手(黑科技)解密教程"竟然是有挂;1、不需要AI权限...
最新辅助挂(德扑ai)ai分析... 最新辅助挂(德扑ai)ai分析可靠吗(AI)ai代打(一直是真的有挂)1、金币登录送、破产送、升级送...
黑科技数据"用ai外... 黑科技数据"用ai外挂打德州有用吗!外挂透明挂辅助工具(黑科技)安装教程"其实是真的有挂用ai外挂打...
苹果版辅助挂(德州ai)ai辅... 苹果版辅助挂(德州ai)ai辅助神器软件怎么使用(Ai)ai购买(确实有挂);小薇(透视辅助)致您一...
黑科技有挂"德扑保险... 黑科技有挂"德扑保险计算器!外挂透明挂辅助下载(黑科技)黑科技教程"一贯存在有挂;1、下载好德扑保险...
大神黑科技(AAPOKer)是... 大神黑科技(AAPOKer)是正规的吗(透视)ai辅助(果然有挂);1、系统规律教程、辅助透视等服务...
黑科技最新"wpk透... 黑科技最新"wpk透视辅助购买渠道!外挂透明挂辅助系统(黑科技)黑科技教程"切实真的有挂1、这是跨平...
科普黑科技(aa poker)... 科普黑科技(aa poker)ai辅助(透视)系统机制(切实是真的有挂)1、完成透视辅助安装,帮助玩...
黑科技真的"微扑克大... 黑科技真的"微扑克大厅都是机器人!外挂透明挂辅助神器(黑科技)攻略教程"其实真的是有挂1、微扑克大厅...