zgldh / qiniu-laravel-storage

Qiniu 云储存 Laravel 5 Storage版
MIT License
519 stars 79 forks source link

uploadToken #12

Closed ethan4ma closed 8 years ago

ethan4ma commented 8 years ago

@zgldh 有点疑问,项目中提供了$disk->getDriver()->uploadToken('file.jpg')接口, 但是想传入包含callback的token到上传文件接口中,没有地方可以接收token参数?

zgldh commented 8 years ago

不太清楚这是怎么样的应用场景。 上传文件请使用 $disk->put()方法。 该方法没有提供类似callback的参数。 我猜你是想做 HTML 表单直接上传至七牛?

zgldh commented 8 years ago

你可以使用 uploadToken 的第三个参数来定制上传策略:

$token = $disk->getDriver()->uploadToken(null, 3600, [
     "scope":              这个不用填,
    "deadline":             这个也不用填,
    "insertOnly":           <AllowFileUpdating        int>,

    "endUser":             "<EndUserId                string>",

    "returnUrl":           "<RedirectURL              string>",
    "returnBody":          "<ResponseBodyForAppClient string>",

    "callbackUrl":         "<RequestUrlForAppServer   string>",
    "callbackHost":        "<RequestHostForAppServer  string>",
    "callbackBody":        "<RequestBodyForAppServer  string>",
    "callbackBodyType":    "<RequestBodyTypeForAppServer  string>",
    "callbackFetchKey":     <RequestKeyForApp         int>

    "persistentOps":       "<persistentOpsCmds        string>",
    "persistentNotifyUrl": "<persistentNotifyUrl      string>",
    "persistentPipeline":  "<persistentPipeline       string>",
    "saveKey":             "<SaveKey                  string>",
    "fsizeMin":             <FileSizeMin            int64>,
    "fsizeLimit":           <FileSizeLimit            int64>,

    "detectMime":           <AutoDetectMimeType       int>,

    "mimeLimit":           "<MimeLimit                string>"
    "deleteAfterDays":     "<deleteAfterDays          int>"
]);

具体参考 http://developer.qiniu.com/article/developer/security/put-policy.html

ethan4ma commented 8 years ago

@zgldh

  1. 是这样的,上传文件使用put接口,上传成功若要触发回调必须使用uploadToken来配置回调地址。 那这个uploadToken 应该配合哪个上传接口来满足我的使用场景呢?
  2. 另外持久化处理persistentFop的回调接口能否使用verifyCallback来校验?
zgldh commented 8 years ago
  1. 你可以在put上传完毕后, 使用exists检查下文件是否存在。存在那就是上传成功了。
  2. 我没有试过,理论上可以。 这几个接口直接对应着七牛官方接口用法,中间没做任何调整。
ethan4ma commented 8 years ago

@zgldh 这个upload token可以配合哪个接口使用呢?

zgldh commented 8 years ago

我觉得是配合 HTML 的 form 上传表单来用的。