Websocket客户端c#代码编写,以17CE api wsapi接口为例
websocket 很少用于api接口,通常是http。今天项目中碰到了一个ws api接口的,官网没有提供c#调用示例代码。有必要分享下。
17CE节点测试结果是依次返回的,ws api接口正好适合此类场景,方便客户端及时获取最新的节点数据。另外,官方已经不再提供Http api接口了。
实现步骤,
- 创建ClientWebSocket对象
- 连接到api地址
- 等待远程返回 login ok,发送请求参数
- 依次读取远程返回结果,直到收到结束消息
- 断开连接
17ce ws api接口参数要注意的是,
- pro_ids不能为空,否则不返回任何省份数据
- json 字符串不能用单引号
代码中采用了 async await 语法糖,确实方便。
需要在.net 4.5以上版本支持,Windows 8 and Server 2012可以运行。
Win7系统,不支持WebSocket!见 https://github.com/5andr0/PogoLocationFeeder/issues/229