React Native Qiniu SDK
修改自官方,官方貌似好久没人维护了,自己修改了下。 增加了base64上传 估计好多人会对上传感到疑惑。下面是我的上传代码(smaple)
普通文件上传 ``Conf.ACCESS_KEY = "xxx"; Conf.SECRET_KEY = "xxx";
var putPolicy = new Auth.PutPolicy2( {scope: "intlec"} ); var uptoken = putPolicy.token(); let formInput = { key :moment().format('YYYY-MM-DD')+"/"+uuid.v4()+".jpg",//七牛没有文件夹,你可以按照这种形式来取文件名,uuid我个人比较喜欢的方式。 }
Rpc.uploadFile(yourLocalFile, uptoken, formInput).then((res)=>{ if(res.status==200){ this.setState({ uri:"http://这里你绑定的域名/"+formInput.key }); } }); ``
=================================================
base64上传 `` Conf.ACCESS_KEY = "xxx"; Conf.SECRET_KEY = "xxx";
var putPolicy = new Auth.PutPolicy2( {scope: "intlec"} ); var uptoken = putPolicy.token(); let formInput = { key :moment().format('YYYY-MM-DD')+"/"+uuid.v4()+".jpg", } Rpc.uploadBase64(yourBase64Ddata, uptoken, formInput.key).then((res)=>{ console.log("数据反馈",res) if(res.status==200){ this.setState({ uri:"http://域名/"+formInput.key }); } }); ``
一下是官方的说明。
纯JavaScript实现的Qiniu SDK,
安装
npm i react-native-qiniu-sf --save
使用方法
;ConfACCESS_KEY = <AK>ConfSECRET_KEY = <SK>//强烈不建议在客户端保存 AK 和 SK ,反编译后 hacker 获取到可以对你的资源为所欲为,建议通过安全渠道从服务器端获取。 //upload file to Qiniuvar putPolicy = scope: "<Bucket>:<Key>";var uptoken = putPolicy;let formInput = key : "<Key>" // formInput对象如何配置请参考七牛官方文档“直传文件”一节Rpc; //download private filevar getPolicy = ;let url = getPolicy;//fetch from this url //image sync operationvar imgInfo = 1100200;let url = imgInfo;//fetch from this url //image info var self = this;var imgInfo = ;let url = imgInfo;; //resource operation//stat infovar self = this;Rs ;
进行中
Release Note
0.1.0
- 上传文件
- 私有库中文件下载功能
- Image Ops
- 资源管理
0.1.1
- 重构 upload 方法 (CaveyChan)
0.2.0
- es6 style
Contributor
- CaveyChan
- laukey