Plus (ThinkSNS+)

Plus (ThinkSNS+)

  • 文档 [New]
  • 文档
  • REST API v2
  • 反馈
  • GitHub

›基本

基本

  • 概述
  • 启动信息
  • Json Web Token 授权
  • 验证码
  • 位置
  • 标签
  • 消息通知
  • 钱包(旧版本)
  • Plus Pay(新钱包-支付工具)
  • 支付能力
  • 文件
  • 关于我们
  • 广告
  • 举报
  • 积分
  • 环信
  • 评论
  • 文件存储

用户

  • 用户
  • 注册
  • 收到的评论
  • 收到的喜欢
  • 关注
  • 标签
  • 身份认证
  • 找人
  • 排行榜
  • 反馈
  • 打赏用户
  • 未读消息
  • 签到
  • 消息

动态

  • 发布动态
  • 获取动态
  • 删除动态
  • 设置评论收费
  • 评论
  • 喜欢
  • 收藏
  • 置顶
  • 打赏
  • 排行榜
  • 举报
  • 积分部分新增接口
  • 话题

音乐

  • 音乐
  • 专辑
  • 点赞
  • 评论
  • 收藏

问答

  • 概述
  • 话题
  • 问题
  • 评论
  • 回答
  • 回答 · 打赏
  • 回答 · 围观
  • 用户 · 关注问题
  • 用户 · 喜欢回答
  • 用户 · 收藏回答
  • 用户 · 申请精选
  • 排行榜
  • 举报
  • 问答部分积分相关新增接口

资讯

  • 概述
  • 分类
  • 投稿
  • 获取
  • 评论
  • 喜欢
  • 打赏
  • 置顶
  • 收藏
  • 排行榜
  • 举报
  • 资讯部分积分相关新增接口

圈子

  • 概述
  • 分类
  • 圈子
  • 圈子 · 管理
  • 圈子 · 举报
  • 圈子 · 成员
  • 帖子
  • 帖子 · 评论
  • 帖子 · 喜欢
  • 帖子 · 收藏
  • 帖子 · 打赏
  • 帖子 · 置顶
  • 圈子部分积分相关新增接口
Edit

文件存储

厂商标识

标识厂商
local本地系统
aliyun-oss阿里云 OSS

频道标识

标识描述
public用于公开图片,例如用户头像,或者不需要付费的任何图片使用 public 作为频道

创建上传任务

/api/v2/storage

请求内容参数:

参数类型描述
filenamestring必须,文件原始名称(需要带上文件拓展名)
hashstring必须,文件的 MD5 算法进行计算的值,采用 32 位算法字符
sizeinteger必须,文件内容大小
mime_typestring必须,文件 MIME 类型
storagearray必须,文件存储信息
storage.channelstring必须,允许的「频道标识」

响应:

Status: 201 Created
{
    "uri": "https://seven-local.oss-cn-beijing.aliyuncs.com/2018/09/05/TxgUMmw25De0t1PCiXkqpMqVAvWFCFFWlNKwd8Xl4V0mxyDvb7ISj0PmTUFH5PJH.png?OSSAccessKeyId=LTAIqgpxMlsPodLB&Expires=1536141182&Signature=EuCsfHaiGnkhDQ4D8wys%2FU7pYtQ%3D", // 上传文件的请求地址
    "method": "PUT", // 上传文件的请求方式
    "headers": { // 上传文件时候,headers 必须的键值
        "Content-Disposition": "attachment;filename=demo.png",
        "Content-Md5": "UC57soIyuC7SPBgHe47MNA==",
        "Content-Length": 802930,
        "Content-Type": "image/png"
    },
    "form": null, // 上传时候的表单,如果是 NULL 则表示整个 Body 是二进制文件流,如果是对象,则构造 `application/form-data` 表单对象
    "file_key": null, // 如果存在 `form` 表单信息,文件流所使用的 key 名称
    "node": "public:2018/09/05/TxgUMmw25De0t1PCiXkqpMqVAvWFCFFWlNKwd8Xl4V0mxyDvb7ISj0PmTUFH5PJH.png" // 文件上传完成后所使用的文件节点
}

文件附带信息

这里是指使用文件对象的附带信息。例如用户资料种的 avatar 字段:

{
    /// ...
    "avatar": {
        "url": "http://127.0.0.1:8000/storage/public:MjAxOC8wOS8wNS9UeGdVTW13MjVEZTB0MVBDaVhrcXBNcVZBdldGQ0ZGV2xOS3dkOFhsNFYwbXh5RHZiN0lTajBQbVRVRkg1UEpILnBuZw==", // 文件请求地址,GET 方式
        "vendor": "aliyun-oss", // 厂商名称
        "mime": "image/png", // 文件 MIME
        "size": 802930, // 文件尺寸
        "dimension": {  // 如果文件是图片,将返回文件的尺寸信息
            "width": 2800, // 图片宽度
            "height": 1867 // 图片高度
        }
    },
    /// ...
}

文件处理规则

文件处理规则是在得到文件请求地址后,使用「查询参数」rule 进行传递参数。这里的参数是根据 vendor 自动客户端自行调整的。

本地存储(local)

本地存储仅支持「图片」处理,其他文件一律不处理。规则如下:

名称描述
w可选,指定图片宽度
h可选,指定图片高度
q可选,指定图片质量,0 - 90
b可选,指定图片高斯模糊程度,0 - 100

参数和值使用 _ 进行链接,多个参数使用 , 进行分割,例如指定图片宽度为 200,规则为 w_200, 多个参数,例如指定宽高和模糊:w_100,h_100,b_60。

拼接出来的请求完整 URL 如:

http://127.0.0.1:8000/storage/public:MjAxOC8wOS8wNS9UeGdVTW13MjVEZTB0MVBDaVhrcXBNcVZBdldGQ0ZGV2xOS3dkOFhsNFYwbXh5RHZiN0lTajBQbVRVRkg1UEpILnBuZw==?rule=w_100,h_100,b_60

其他厂商

  • 阿里云 OSS - 图片处理
← 评论用户 →
  • 厂商标识
  • 频道标识
  • 创建上传任务
  • 文件附带信息
  • 文件处理规则
    • 本地存储(local)
    • 其他厂商
Plus (ThinkSNS+)
More
GitHubStar
Copyright © 2019 Chengdu ZhiYiChuangXiang Technology Co., Ltd. All rights reserved.