8.4. WEBSOCKET CLIENT
8.4.1. 概述
Websocke是一种在TCP连接上进行全双工通信的协议
8.4.2. DEMO工程
``apps/demo/demo_DevkitBoard ``
8.4.3. Websocket示例
示例说明
websocket示例工程展示了作为客户端发送数据到websocket服务器,并从服务器接收数据的示例
示例
示例代码见 apps\common\example\network_protocols\websocket\main.c
, 测试时需要在 apps/demo/demo_DevKitBoard/include/demo_config.h
,开启宏 USE_WEBSOCKET_TEST
。
操作说明
示例需要运行在STA模式 (注:如何进行sta和ap切换,请参考 Wi-Fi部分 )
编译工程,烧录镜像,复位启动
系统启动并成功联网后,websocket客户端会循环发送数据到服务器,并接收websocket服务器的数据
示例流程如下:
c_main()
入口创建任务
websocket_start
websocket_start
函数流程通过
wifi_get_sta_connect_state
函数检测是否通过dhcp成功获取到ip成功通过dhcp获取到ip后,调用
websocket_client_thread_create
创建任务websockets_client_main_thread
,退出websocket_start
websockets_client_main_thread
任务流程初始化websocket相关参数和API(注:大多数接口都是内部已经实现好,用户只需要实现回调函数用于数据处理),连接websocket服务器
连接成功后,创建
websocket_client_heart
任务和websocket_client_recv
任务,接着循环向websocket服务器发送数据
websockets_callback
为接收数据回调函数,用户可以进行数据处理