An open API service indexing awesome lists of open source software.

https://github.com/mohuishou/sockettest

golang socket 转发测试
https://github.com/mohuishou/sockettest

Last synced: 5 months ago
JSON representation

golang socket 转发测试

Awesome Lists containing this project

README

          

golang socket 转发测试
====

> 用于接收client端的数据转发到app端

## 数据发送约定

1. 所有的数据采用json字符串发送
2. 建立连接使用TCP协议
3. 连接建立成功之后,需要先发送一次客户确认数据
4. 客户数据发送之后,client才将数据发送给server端

## 数据发送流程

1. 身份确认环节
客户端发送身份信息,如果信息无误将会返回`status:1`的returnData格式的json数据
```
+------------+ user +------------+
| | ------------------> | |
| client | returns | server |
| | <------------------ | |
+------------+ +------------+
```

2. 数据发送环节
- 硬件[client]客户端发送数据,如果信息有错误`status:0`的returnData格式的json数据
- app客户端不发送数据,只接收来自服务器的转发数据
```
+------------+ data +------------+
| | ------------------> | |
| client | returns | server |
| | <------------------ | |
+------------+ +------------+

+------------+ data +------------+
| app | <------------------ | server |
+------------+ +------------+
```
## 数据格式

1. user[用于确认客户端身份]

```json
{
"id":1,
"type":"client" //或者是 user
}
```

2. data[具体的数据]

```json
{
"lat":"11.3",
"lon":"111.1",
"fall":"1" //1:摔倒,0:正常
}
```

3. returnData[服务器端返回的数据]
```json
{
"status":1, //1表示正确消息,0表示错误消息
"msg":"app客户端连接成功"
}
```