免费开放API使用文档

596 阅读2分钟

API 开放平台 v3.0 使用文档

开放平台API地址

之前推出的api数据均来自于互联网,数据依赖于源网站,源网站对数据调整后,导致数据无法访问,所以此次重写3.0版本,所有数据保存在本地服务器,避免数据失效问题。

此次对数据进行了划分,支持隔离非隔离模式。

一、隔离模式:

用户注册登录后,上传的文件,发布的动态,发布的文章等都可以通过接口获取登录者自己账号下的数据,这部分数据会过滤掉其他用户的数据。

二、非隔离模式:

与隔离模式对应,同时也提供获取公共数据的接口,让你不必自己生产数据,而可以直接使用其他用户构建好的数据。

三、用户授权(获取公共数据无需登录授权):

1.注册账号/api/auth/login

参数:

{
  "password": "password123",
  "username": "alice"
}

响应:

{
  "code": 200,
  "data": {
    "profile": {
      "account_id": 1,
      "age": 25,
      "avatar": "https://i.pravatar.cc/150?img=1",
      "bio": "热爱编程的开发者",
      "created_at": "2024-01-01 10:00:00",
      "email": "alice@example.com",
      "gender": "female",
      "location": "北京",
      "nickname": "爱丽丝",
      "updated_at": "2024-01-01 10:00:00"
    },
    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
  },
  "message": "成功"
}
2.注册账号/api/auth/login

参数:

{
  "password": "password123",
  "username": "alice"
}

响应:

{
  "code": 200,
  "data": {
    "profile": {
      "account_id": 1,
      "age": 25,
      "avatar": "https://i.pravatar.cc/150?img=1",
      "bio": "热爱编程的开发者",
      "created_at": "2024-01-01 10:00:00",
      "email": "alice@example.com",
      "gender": "female",
      "location": "北京",
      "nickname": "爱丽丝",
      "updated_at": "2024-01-01 10:00:00"
    },
    "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
  },
  "message": "成功"
}
3.需要授权的接口增加请求头(以js为例,其他语言类似,在请求头增加Authorization字段即可)
request.interceptors.request.use(
    (config) => {
        if (userStore.token) {
            // userStore.token来自于登录返沪的token字段eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
            config.headers.Authorization = `Bearer ${userStore.token}`;
        }
        return config;
    },
    (error) => {
        return Promise.reject(error);
    }
);

四、文件上传须知:

1.文件上传时,需要传递fileType参数,此支持的类型

avatar:当此图片是用来设置用户头像时使用

image:当此图片是用来上传图库时使用(后续可以通过获取图片接口获取)

video:当此图片是用上传视频时使用(后续可以通过获取视频接口获取)

article:当此图片是文章内容中需要展示时使用

2.获取文件

例如上传了一张图片后,返回的fileName778af5d6-a6e1-4596-9c61-aa0ba43cdade.jpg

通过/api/files/{filename}即可返回上传的文件,例如:/api/files/778af5d6-a6e1-4596-9c61-aa0ba43cdade.jpg

四、接口调试:

1.在线接口调试

image-20251201153757320.png

image-20251201153929289.png

image-20251201154013982.png

image-20251201154041022.png

image-20251201154137159.png

image-20251201154226207.png

五、案例展示:

image-20251201154627902.png

image-20251201154709155.png

六、其他:

当数据不满足要求,需要自己的数据时,可以制作自己的json数据,然后上传到服务器托管。

参考创建自定义json/api/json和获取自定义json/api/json/{id}