GPT API 文档
GPT API
GPT API文档
接口调试
可以使用接口中提供的Curl命令进行调试,推荐安装jq来进行Json的序列化显示。
安装方式
Mac os
brew install jq
Windos
官网下载: https://stedolan.github.io/jq/
接口参数格式
目前接口部分使用 HTTP 的 Body 来进行参数传递,接口支持 application/json 的 Body 格式
同时也支持 application/x-www-form-urlencoded 的 Body 格式
两种方式均需要在 Header 中注明内容类型的属性。
请勿使用from-data传递Payload
接口返回说明
第一层 http code返回码,目前常见返回码如下
Http code | 说明 |
---|---|
200 | 调用成功 |
400 | 调用失败,返回自定义错误 |
401 | 鉴权失败 |
403 | 权限不足,没有调用权限 |
500 | 服务器本身出错 |
第二层 接口返回内容中的status和error字段
对于status,我们有如下规定
- status 是一个自然数
- status = 0表示接口调用成功
- status => 0 表示接口调用失败,这一部分错误号是每个接口独立的,同一个错误码在不用接口中会表示不一样的错误,具体错误说明在接口中会说明
错误说明
- 请求体错误,如请求体格式不对此错误一般伴随http 400 返回码
- 请求体错误,如缺少必要的请求参数、参数不合法,此错误一般伴随http 400 返回码
- 所请求的接口对于所携带的token其所属用户来说权限不足,此错误一般伴随http 403 返回码
- 所请求的接口使用了权限控制,但未在系统中登记权限路由名称,此错误一般伴随http 403 返回码
- 所请求的接口使用了权限控制,但未在系统中登记权限路由所属角色关联,此错误一般伴随http 403 返回码
error
为字符串,会给出status的具体错误原因描述,可信赖字段,可直接展示至前端页面
errors (用于表单验证)
为一个对象,会给出status的具体错误原因描述,这个字段适用于程序开发中的错误调试,不应该把他的返回内容作为代码逻辑判断的条件。也不应直接在前端页面显示。
示例
{
"status": 1,
"errors": {
"account": " account 不能为空",
"code": " code 不能为空"
}
}
接口地址说明
http | https | |
---|---|---|
线下 | http://47.112.148.159:9101/ | |
预发布 | ||
正式 | 暂无 |
鉴权
接口使用的是基于 rfc6750 的Bearer Token 基于JWT来进行鉴权
我们的Bearer Token 使用的是,在实际业务中并不需要每次调用接口前都去获取Token。
在Token的有效期内可以直接用现有的Token进行接口调用,目前我们的Token 有效期为24小时,过期后则立即失效。此外客户端也可以对Token进行自解,来判断token有效期
访问需要鉴权的接口共需要两步:
- 判断当前Token是否存在或过期,若有异常则重新通过登录授权接口获取Token 。(通过账号密码进行验证,移动端额外需要设备唯一标识传至头部信息)
- 在Http Header中携带已保存的Token。
- 头部信息描述 key为Authorization value为登陆接口返回的Token。
用户
是否是新用户
IS_NEW
HTTP Method
GET
HTTP Request
/api/user/is_new
Request Parameters Query
Title | Description | Type | Required | Tips |
---|---|---|---|---|
token | 用户token | string | 是 |
Request Parameters Body
无
Response Data
Title | Description | Type | Required | Tips |
---|---|---|---|---|
errno | 状态:0成功 非0失败 | integer | 是 | |
data | 数据 | Data |
是 |
data
Title | Description | Type | Required | Tips |
---|---|---|---|---|
is_new | 是否是新用户 | int | 是 | 0 否 1是 |
Response Data Json
{
"errno": 0,
"errmsg": "SUCCESS",
"timestamp": 1697095021,
"logId": "65279d6c61e0b",
"data": {
"is_new": true
}
}
登陆
LOGIN
HTTP Method
POST
HTTP Request
/api/user/login
Request Parameters Query
无
Request Parameters Body
Title | Description | Type | Required | Tips |
---|---|---|---|---|
token | 用户token | string | 是 |
Response Data
Title | Description | Type | Required | Tips |
---|---|---|---|---|
errno | 状态:0成功 非0失败 | integer | 是 | |
data | 忽略该值 | 是 |
Response Data Json
{
"errno": 0,
"errmsg": "SUCCESS",
"timestamp": 1697094938,
"logId": "65279d18d7de5",
"data": true
}
Log
日期 | 作者 | 内容 |
---|---|---|
2023/10/10 | 荀立强 | 新增 |