uptoken 是由PutPolicy
经过编码加密得到的,语义如下
字段 | 类型 | 语义 |
---|---|---|
scope | string | 指定为bucket:key 这样的形式,bucket 必须 |
deadline | int | token失效的unix时间戳(单位:秒),必须 |
insertOnly | int | 非0的情况下,即使scope 中指定了key 也是insert only,无法修改文件 |
callbackUrl | string | 上传完毕后七牛云存储向 App-Server 发送POST请求的URL |
callbackBody | string | 上传完毕后,七牛云存储向 App-Server 发送POST请求的数据,支持魔法变量和自定义变量 |
endUser | string | 给上传的文件添加唯一属主标识 |
returnBody | string | 自定义从七牛云存储最终返回給终端 App-Client 的数据,支持魔法变量和自定义变量 |
returnUrl | string | 文件上传完毕后,浏览器执行303跳转的url |
saveKey | string | 利用文件的属性,日期等参数组成特定的key |
transform | string | 对文件先进行一次变换操作(比如将音频统一转为某种码率的mp3)再进行存储。transform的值就是一个fop指令,比如imageView/1/w/310/h/395/q/80 ,其含义是对上传的文件执行这个fop指令,然后把结果保存到七牛。 |
fopTimeout | int | 文件变换操作执行的超时时间(单位:秒),这个值太小可能会导致误判(最终存储成功了但客户端得到超时错),但太大可能会导致服务端将其判断为低优先级任务。建议取一个相对准确的时间估计值*N(N不要超过5) |
persistentOps | string | 对文件执行持久化fop的操作,用; 分隔 |
persistentNotifyUrl | string | 当持久化fop操作执行成功以后,服务器通知的url |
detectMime | int | 是否检测文件类型,1为根据内容检测,0为根据后缀或者用户指定 |
mimeLimit | string | 限制了上传文件的MimeType,支持尾部 * 通配符以及多条记录(如image/*;video/* ),支持头部 ! 表示不允许的MimeType(如!image/*;video/* ) |
fsizeLimit | int64 | 限制上传文件大小 |
当指定了此参数,用户上传一个文件后,会启动一个异步数据处理任务,客户端会收到 persistentId 字段唯一标示此任务。 persistentOps 字段可以描述数据处理命令和结果保存的路径。
- 默认持久化路径。当只指定了数据处理命令时,服务端会选择上传文件的 bucket 作为数据处理结果的 bucket,key 为服务端自动生成。
- 自定义持久化路径。当在数据处理命令后用管道连接
saveas/<encodedEntryURI>
时,服务端会用 saveas 命令指定的 entryURI 作为持久化的路径,比如avthumb/flv|saveas/cWJ1Y2tldDpxa2V5
,是将上传的视频文件转码成 flv 格式后存储为 qbucket:qkey,cWJ1Y2tldDpxa2V5 是 qbucket:qkey 的 base64 urlsafe 编码。
以上描述可以同时作用于多个数据处理命令,用 ;
分隔,比如 avthumb/mp4|saveas/cWJ1Y2tldDpxa2V5;avthumb/flv|saveas/cWJ1Y2tldDpxa2V5Mg==
。
字段 | 类型 | 语义 |
---|---|---|
asyncOps | string | 对文件进行上传预转的fop,用; 分隔 |
customer | string | 类似endUser 字段 |
escape | int | 是否允许存在转义符号,现在默认允许 |
exclusive | int | 类似insertOnly |