# Fatbeans API 帮助文档

## 1.发送数据接口

### POST /api/send

本 API 提供数据包发送功能，支持 TCP 和 UDP 协议，接收客户端发送的 base64 编码数据。

需要先“启动”Fatbeans抓包并且获取到对应的连接套接字后才能发送封包，可用的套接字可查看发送器中的“发送目标”下拉列表。

#### 请求头

请求需要包含以下请求头：

    Content-Type: application/json

#### 参数说明

- `protocol`: 协议，默认值为 `TCP`，可选：`TCP` 、 `UDP`
- `srcIP`: 源 IP 地址
- `srcPort`: 源端口号
- `dstIP`: 目标 IP 地址
- `dstPort`: 目标端口号
- `data`: 要发送的二进制数据的 base64 编码字符串。

#### 请求示例

请求体采用JSON格式，如下：

        POST http://localhost:9090/api/send
        Content-Type: application/json

        {
        "protocol": "TCP",  // 可选：TCP 、 UDP
        "srcIP": "192.168.0.1",
        "srcPort": 1000,
        "dstIP": "192.168.0.5",
        "dstPort": 2000,
        "data": "aGVsbG8gZmF0YmVhbnM="
        }

#### 响应示例

    {
        "Code": 0,
        "Message": "发送成功"
    }

#### 错误码说明

- `-1`: 请求模型验证失败。
- `-2`: 请求体不能为空。
- `-3`: 请先启动 Fatbeans，进入抓包状态。
- `-4`: 没有找到指定的套接字。
- `-5`: 发送的数据包长度不能为 0。
- `-99`: 发生未知异常。