修改文件的 MIME 类型信息。
注意:
- 归档存储文件,只有解冻状态时可以修改MIME类型信息。
请求报文
请求语法
POST /chgm/<EncodedEntryURI>/mime/<EncodedMimeType>/x-qn-meta-<meta_key>/<EncodedMetaValue>/cond/<Encodedcond> HTTP/1.1
Host: rs.qbox.me
Content-Type: application/x-www-form-urlencoded
Authorization: Qiniu <AccessToken>
EncodedEntryURI
和EncodedMimeType
的细节请参考EncodedEntryURI,而EncodedMimeType
编码前的明文要设置新的mimeType
。meta_key
可以自定义,它可以由字母、数字、下划线、减号组成,且长度小于等于50,单个文件 meta_key 和 metavalue 总和大小不能超过 1024 字节,可以同时修改多个 meta 字段,metavalue 规则和 mimeType 相同。cond
当前支持设置hash、mime、fsize、putTime条件,只有条件匹配才会执行修改操作,Encodedcond
中的cond
支持condKey1=condVal1&condKey2=condVal2
格式。
访问权限
管理凭证方式。
头部信息
头部名称 | 必填 | 说明 |
---|---|---|
Authorization | 是 | 该参数应严格按照管理凭证格式进行填充,否则会返回401错误码 一个合法的 |
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 | 管理凭证无效 |
403 | 禁止操作 当归档存储文件未解冻完成调用接口会返回 403 ArchiveUnrestored {"error":"archive unrestored"} |
612 | 目标资源不存在 |
613 | 当cond 条件不满足时,返回613 {"error": "cond not match"} |
599 | 服务端操作失败 |
示例
命令行示例
curl -i \
-o - \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Authorization: Qiniu bt500PzCG9tV0bccCOdnrmCHPXCPLieGSDEprB7M:4wG...' \
-X POST \
'http://rs.qbox.me/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: Qiniu EmEtww5prO5pe8ts_mG.......1tXlEQ9hoG4:LuGCwpfK-rM=
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip
注意:要在Authorization
头部的<AccessToken>
前添加Qiniu
和半角空格。
响应示例
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-Reqid: -nIAABnfaeIlucoU
文档反馈
(如有产品使用问题,请提交工单)