laravel + qiniu 图片音频上传存储

项目需要app上传图片和视频,直接用了七牛云!方便快速!
七牛云开发文档地址:http://developer.qiniu.com/
下面开始用laravel开发七牛云的业务!
值得注意的一点是:七牛的上传token要在客户端生成!


1.下载七牛的sdk,composer安装:
php composer.phar require qiniu/php-sdk
不过一般不的话composer下载比较慢所以直接在七牛的文档链接里下载vendor包
下载好放到项目的vendor目录下面。


2.放到目录下面,在config下面写一个配置文件qiniu.php
将七牛的一些配置sk、ak、bucket等写到配置文件内!
return [
‘phpsdk’ => [
‘accessKey’ => env(‘QINIU_ACCESS_KEY’),
‘secretKey’ => env(‘QINIU_SECRET_KEY’),
‘bucket’ => env(‘QINIU_BUCKET’),
‘domain’ => env(‘QINIU_DOMAIN’),
],
];
当然这些常量要在.env配置文件里配置好


3.在要使用的控制器里生成上传token
public function token(Request request){qn_cof = config(‘qiniu.phpsdk’);//获取七牛的配置数组
qn=new\Qiniu\Auth( qn_cof[‘accessKey’], qncof[secretKey]);//auth pipeline = ‘音频处理队列名’;//处理音频的队列!
fops=avthumb/mp4/s/640x360/vb/1.25m;//mp4 policy = array(
‘persistentOps’ => fops,persistentPipeline=> pipeline
);
qntoken= qn->uploadToken( qncof[bucket],null,3600, policy);//生成上传token!时效3600s
}


4.将服务端生成的token给到app的客户端。
app客户端可以通过sdk去上传图片和视频到七牛云了
上传成功之后会返回
hash = xxxx;
key = xxxxx;
persistentId = xxxx;


5.用七牛云上的域名/返回的key值 就可以在网页端进行访问了
作为php服务端!将返回key值存起来就ok!


当然这是最简单的使用方式!还有很多可以优化和高级的东西!

你可能感兴趣的:(php)