Wslay 是一个用 C 语言实现的 WebSocket 开发库。实现了 RFC 6455 中描述的第 13 版本的协议。提供了基于事件的 API 和基于帧的底层 API。特别适合非堵塞的 reactor 模式风格应用。可在不同的事件中设置回调。Wslay 只支持 WebSocket 协议的数据传输部分,不执行 HTTP 的握手过程。
示例代码:
ssize_t send_callback(wslay_event_context_ptr ctx, const uint8_t *data, size_t len, void *user_data) { struct Session *session = (struct Session*)user_data; ssize_t r; int sflags = 0; #ifdef MSG_MORE if(flags & WSLAY_MSG_MORE) { sflags |= MSG_MORE; } #endif // MSG_MORE while((r = send(session->fd, data, len, sflags)) == -1 && errno == EINTR); if(r == -1) { if(errno == EAGAIN || errno == EWOULDBLOCK) { wslay_event_set_error(ctx, WSLAY_ERR_WOULDBLOCK); } else { wslay_event_set_error(ctx, WSLAY_ERR_CALLBACK_FAILURE); } } return r; }
术语说明 AppID AppID是轻应用/订阅号唯一识别标志,轻应用/订阅号管理员可在轻推管理后台中查看。 AppSecret AppSecret是给轻应用/订阅号分配的密钥,开发者需要妥善保存这个密钥,防止被恶意使用,为了安全,管理员也可以对此密钥进行修改,修改后前密钥失效。轻应用/订阅号管理员可在轻推管理后台中查看。 access_token access_token(身份令牌)是轻应用/订阅
源码目录结构 构建系统概览 构建步骤(Windows) 在调试中使用 Symbol Server
错误分析
Developing Electron Electron 和 NW.js (原名 node-webkit) 在技术上的差异 Updating an Appveyor Azure Image Build Instructions 构建步骤(Linux) 构建步骤(macOS) 构建步骤(Windows) 构建系统概览 Chromium 开发 在 C++ 代码中使用 clang-format 工具 代
开始开发环境设置 在你使用 yarn 或 npm install 安装了依赖之后, 运行... yarn run dev # 或者 npm run dev ...然后 轰! 现在,你就在运行一个 electron-vue 应用程序. 此样板代码附带了几个易于移除的登录页面组件。
Core Concepts 获取 Kubernets 所有对象 $ kubectl api-resources --sort-by=name -o name | wc -l 67 $ kubectl api-resources --sort-by=name -o name apiservices.apiregistration.k8s.io bgpconfigurations.crd.proje
三节点复制集 mkdir -p ~/data/r{0,1,2} for i in 0 1 2 ; do mongod --dbpath ~/data/r$i --logpath ~/data/r$i/mongo.log --port 2700$i --bind_ip 0.0.0.0 --fork --replSet repl ; done mongo --port 27000 --eval 'r
开发 git clone https://github.com/weui/weui.git cd weui npm install npm start 运行npm start命令,会监听src目录下所有文件的变更,并且默认会在8080端口启动服务器,然后在浏览器打开 http://localhost:8080/example。 参与贡献 欢迎参与 WeUI 的贡献,你可以给我们提出意见、建议,报