Skip to content

HTTP调用普通

字数统计:241 字
阅读时长:1 分钟

INFO

在某些情况下,你的业务需求可能并不允许你进行WS连接,

这时候就需要使用HTTP调用方式。

HTTP调用方式依旧需要提供完整的MessageReceive结构体。

  1. 打开GsCore的HTTP模式(和WS并不冲突,但仍然建议不使用时关闭
    • 打开gsuid_core/gsuid_core/config.json
    • 找到ENABLE_HTTP配置项,将其设置为true
  2. 依旧是默认8765端口(如有自行修改,以修改的为准),终结点为/api/send_msg
  3. POST方法,数据内容为MessageReceive数据结构,以下为调用示例:
python
async def http_test():
    msg = to_builtins(
        MessageReceive(
            content=[
                MessageSegment.text('强制刷新'),
            ]
        )
    )

    async with httpx.AsyncClient(timeout=20) as client:
        response = await client.post(
            'http://127.0.0.1:8765/api/send_msg',
            json=msg,
        )
        print(response.text)
        print(response.status_code)
  1. 返回结构为一个字典,并带有两个参数:

    Key列表Value列表可能的值
    status_codeint200:成功
    -100:失败
    dataMessageSend成功为:MessageSend
    失败为:None