您的位置:首页 > Web前端 > JavaScript

七牛上传图片(javascript)

2016-05-04 17:34 633 查看
前台需要加载2个js文件

plupload.full.min.js

qiniu.min.js

七牛js是基于plupload所有支持plupload的配置参数例如resize通过压缩图片尺寸压缩图片

七牛js的使用可以从官网看http://developer.qiniu.com/code/v6/sdk/javascript.html#api-reference

个人使用经验

uptoken从后台获取(php)

相关配置参数如下

uptoken_url: ‘/index.php?r=upload/get-token’

后台php则是通过qiniu php-sdk生产uptoken

使用composer下载qiniu/php-sdk

php使用AKSK组成uptoken

public function actionGetToken()
{
date_default_timezone_set(TIMEZONE);
$bucket = Yii::$app->request->get('bucket', QINIU_BUCKET);
$key = Yii::$app->request->get('key');
$accessKey = QINIU_AK;
$secretKey = QINIU_SK;
$auth = new Auth($accessKey, $secretKey);
$token = $auth->uploadToken($bucket, $key);
\Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
return ['uptoken'=>$token];
}

public function actionGetDomain()
{
\Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
return ['domain'=>QINIU_DOMAIN];
}


修改sdk来修改上传策略

qiniu/php-sdk/src/Qiniu/Auth.php 参数policyFields

上传策略,参数规格详见

http://developer.qiniu.com/docs/v6/api/reference/security/put-policy.html

js控件参数结合plupload属性参考http://www.cnblogs.com/2050/p/3913184.html

使用经验:1,文件格式限制filters : [ {title : “image”, extensions : “jpg,jpeg,png,bmp,gif,raw”} ],在监听’Error’: function(up, err, errTip) 方法中可获得错误信息err.message == ‘File extension error.’

残留疑问:plupload 的resize只能通过尺寸压缩,7M图片压缩失败,并且没有保留大小的图片压缩。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  七牛