对象存储

  • 资源元信息修改

    最近更新时间:2017-06-23 19:06:49

    修改文件的 MIME 类型信息。

    请求报文

    请求语法

    POST /chgm/<EncodedEntryURI>/mime/<EncodedMimeType>/x-qn-meta-<meta_key>/<EncodedMetaValue>/cond/<Encodedcond> HTTP/1.1
    Host:           rs.qiniu.com
    Content-Type:   application/x-www-form-urlencoded
    Authorization:  QBox <AccessToken>
    

    EncodedEntryURIEncodedMimeType的细节请参考EncodedEntryURI,而EncodedMimeType编码前的明文要设置新的mimeTypemeta_key可以自定义,它可以由字母、数字、下划线、减号组成,且长度小于等于50,单个文件 meta_key 和 metavalue 总和大小不能超过 1024 字节,可以同时修改多个 meta 字段,metavalue 规则和 mimeType 相同。cond当前支持设置hash、mime、fsize、putTime条件,只有条件匹配才会执行修改操作,Encodedcond中的cond支持condKey1=condVal1&condKey2=condVal2格式。

    访问权限

    管理凭证方式。

    头部信息

    头部名称 必填 说明
    Authorization 该参数应严格按照管理凭证格式进行填充,否则会返回401错误码

    一个合法的Authorization值应类似于:QBox bt500PzCG9tV0bccCOdnrmC...

    mimeType命名规则

    • 目前所有的mimetype包括如下字符集:a-z, A-Z, 0-9, ., +, /, -
    • 因为mimetype日后还会增加,为保证兼容将增加如下字符;,=,,,_和空格。
    • 目前mimetype最大长度为79, 为保证兼容将来限制最大长度为200。
    • mimetype为空这里认为合法,因为如果为空后面会进一步检测并设置。
    • mimetype可以包括空格,例如:text/plain; charset=iso-8859-1
    • 禁止转义,如%0A表示\n,所以禁止出现%

    响应报文

    响应语法

    HTTP/1.1 200 OK
    Content-Type: application/json
    Cache-Control: no-store
    

    头部信息

    头部名称 必填 说明
    Content-Type 正常情况下该值将被设为application/json,表示返回JSON格式的文本信息。

    其它可能返回的头部信息,请参考HTTP扩展字段

    响应内容

    • 如果请求成功,不返回任何内容。

    • 如果请求失败,返回包含如下内容的JSON字符串(已格式化,便于阅读):

    {
        "error":   "<errMsg    string>"
    }
    
    字段名称 必填 说明
    error 与HTTP状态码对应的消息文本

    响应状态码

    HTTP状态码 含义
    200 更改成功
    400 请求报文格式错误
    <EncodedEntryURI>解析失败,返回400 Bad Request {"error":"invalid argument"}
    <EncodedEntryURI>不符合UTF-8编码,返回400 Bad Request {"error":"key must be utf8 encoding"}
    mimeType不合法时,返回400 Bad Request {"error":"Invalid mimeType"}
    401 管理凭证无效
    612 目标资源不存在
    613 cond条件不满足时,返回613 {"error": "cond not match"}
    599 服务端操作失败

    如遇此错误,请将完整错误信息(包括所有HTTP响应头部)通过邮件发送给我们。

    示例

    命令行示例

    curl -i \
         -o - \
         -H 'Content-Type: application/x-www-form-urlencoded' \
         -H 'Authorization: QBox bt500PzCG9tV0bccCOdnrmCHPXCPLieGSDEprB7M:4wG...' \
         -X POST \
         'http://rs.qiniu.com/chgm/YnVja2V0OmtleQ==/x-qn-meta-meta_key/bWV0YV92YWx1ZQ==/cond/ZnNpemU9Ng=='
    

    请求示例

    POST /chgm/YnVja2V0OmtleQ==/x-qn-meta-meta_key/bWV0YV92YWx1ZQ==/cond/ZnNpemU9Ng==  HTTP/1.1
    Host: rs.qbox.me
    User-Agent: Go-http-client/1.1
    Content-Length: 0
    Authorization: QBox EmEtww5prO5pe8ts_mG.......1tXlEQ9hoG4:LuGCwpfK-rM=
    Content-Type: application/x-www-form-urlencoded
    Accept-Encoding: gzip
    

    注意:要在Authorization头部的<AccessToken>前添加QBox和半角空格。

    响应示例

    HTTP/1.1 200 OK
    Server: nginx
    Date: Fri, 23 Jun 2017 10:23:18 GMT
    Content-Type: application/json
    Content-Length: 0
    Connection: keep-alive
    X-Log: rs35_17.sel;.........;RS:2;ZONEPROXY:4
    X-Reqid: -nIAABnfaeIlucoU
    
    以上内容是否对您有帮助?
  • 提交工单