表单策略定义 (HTML Form Policy)

Qiniu S3 API 服务支持以 JSON 格式定义 HTML 表单 (Form) 上传的认证策略 (Policy),认证策略中同样可以使用模板字符串 ${filename} 代表客户端最终上传文件的名称。

格式定义

{
    "expiration": "2006-01-02T15:03:04.000Z",
    "conditions": [
        {"bucket": "s3_bucket" },
        ["starts-with", "$key", "uploads/avatar/"]
    ]
}
有效期 (expiration)

指定 HTML 表单 (Form) 策略 (Policy) 的截止有效日期时间,使用 ISO8601 日期格式。

约束条件 (conditions)

指定 HTML 表单 (Form) 上传的各种约束条件。约束规则支持两种匹配模式:

  • 精确匹配,如 ["eq", "$bucket", "s3_bucket"] 指定上传文件的空间 (Bucket) 名称,精确匹配亦可简写成 {"bucket": "s3_bucket"};

  • 前缀匹配,如 ["starts-with", "$key", "camera_"] 指定客户端只能上传文件名称以 camera_ 开头的对象;

字段定义

注意:策略 (Policy) 字段区分大小写

字段名称 描述
x-amz-algorithm 指定签名算法,AWS V4 签名为 AWS4-HMAC-SHA256
x-amz-credential 指定签名认证信息, 格式为 <qiniu-access-key-id>/<date>/<region>/<service>/aws4_request
x-amz-date 指定客户端上传日期时间,使用 ISO8601 日期格式
content-type 指定上传文件的 MIME 类型
success_action_redirect 指定文件上传成功后的跳转 URL
success_action_status 指定文件上传成功后返回的 HTTP 状态码
bucket 指定上传文件的空间名称
key 指定上传文件的名称约束 (["starts-with", "$key", "camera_"]) 或文件上传后的名称 ({"key": "uploads/avatar/${filename}"})

results matching ""

    No results matching ""