首頁 >後端開發 >php教程 >七牛云存储 - 七牛:php 生成带多个策略的 token 的问题

七牛云存储 - 七牛:php 生成带多个策略的 token 的问题

WBOY
WBOY原創
2016-06-06 20:35:361632瀏覽

我之前一直这样生成七牛的token :

<code>    $bucket = "";     //你的七牛云存储的空间名称
    $accessKey = '';  //公钥
    $secretKey = '';  //密钥

    Qiniu_SetKeys($accessKey, $secretKey);
    $putPolicy = new Qiniu_RS_PutPolicy($bucket);
    //生成token
    $token = $putPolicy->Token(null);
</code>

现在我想放多一些策略,比如图片大小,图片重命名,允许上传的文件类型等,于是,我构造了这样的方法:

<code>$policy= array(
    "scope"=>"",          //存储的空间名称
    "saveKey"=>"",        //重命名
    "fsizeLimit"=>"",     //文件大小
    "mimeLimit"=>""       // 文件类型"
);
$accessKey = ''; //公钥
$secretKey = ''; //密钥

Qiniu_SetKeys($accessKey, $secretKey);
$putPolicy = new Qiniu_RS_PutPolicy($policy);//把策略放这里
//生成token
$token = $putPolicy->Token(null);
</code>

现在,我就遇到麻烦了,这样子是生成不了token的,而第一个方法中,我是成功生成了token的,我本来想下载php jdk来处理这个问题,但似乎我没有看懂,请问有谁能帮我一下?

回复内容:

我之前一直这样生成七牛的token :

<code>    $bucket = "";     //你的七牛云存储的空间名称
    $accessKey = '';  //公钥
    $secretKey = '';  //密钥

    Qiniu_SetKeys($accessKey, $secretKey);
    $putPolicy = new Qiniu_RS_PutPolicy($bucket);
    //生成token
    $token = $putPolicy->Token(null);
</code>

现在我想放多一些策略,比如图片大小,图片重命名,允许上传的文件类型等,于是,我构造了这样的方法:

<code>$policy= array(
    "scope"=>"",          //存储的空间名称
    "saveKey"=>"",        //重命名
    "fsizeLimit"=>"",     //文件大小
    "mimeLimit"=>""       // 文件类型"
);
$accessKey = ''; //公钥
$secretKey = ''; //密钥

Qiniu_SetKeys($accessKey, $secretKey);
$putPolicy = new Qiniu_RS_PutPolicy($policy);//把策略放这里
//生成token
$token = $putPolicy->Token(null);
</code>

现在,我就遇到麻烦了,这样子是生成不了token的,而第一个方法中,我是成功生成了token的,我本来想下载php jdk来处理这个问题,但似乎我没有看懂,请问有谁能帮我一下?

看你的代码,用的应该是6.x版本的sdk,而设置上传策略的方法用的是7.x版本的方法,所以肯定会是有问题的。

6.x版本php sdk的文档可以参考 http://developer.qiniu.com/docs/v6/sdk/legacy-php-sdk.html

另外你这里修改成下面这样应该是可以的:

<code>$bucket = "";
$putPolicy = new Qiniu_RS_PutPolicy("$bucket");
$putPolicy->SaveKey = "";
$putPolicy->FsizeLimit = "";
$putPolicy->MimeLimit= "";

$accessKey = ''; //公钥
$secretKey = ''; //密钥

Qiniu_SetKeys($accessKey, $secretKey);
$upToken = $putPolicy->Token(null);
echo $upToken;
</code>
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn