当前位置: 首页 > Web前端 > HTML5

七牛文件上传前端部署

时间:2023-04-04 22:41:12 HTML5

后端(Node.js)后端的作用是为前端提供上传所需的凭据。准备注册七牛开发者账号。登录七牛开发者后台获取AccessKey和SecretKey创建对象存储的存储空间地址:https://portal.qiniu.com/user/keysdkinstallnpminstallqiniu--savetokengenerateletmac=newqiniu.auth.digest.Mac(accessKey,secretKey);让options={scope:config.Bucket,expires:7200,returnBody:'{"key":"$(key)","hash":"$(etag)","fsize":$(fsize),"bucket":"$(bucket)","name":"$(x:name)"}'};letputPolicy=newqiniu.rs.PutPolicy(options);letuploadToken=putPolicy.uploadToken(mac);scope:存储空间的名称expires:凭证的有效时间,默认情况下,有效期为1小时returnBody:返回内容,上面代码设置返回内容为JSON格式结束上传前端(vue)sdk安装//installnpminstallqiniu-js--save//引入varqiniu=require('qiniu-js')//orimport*asqiniufrom'qiniu-js'上传代码qiniuUrl:上传文件所在的存储区存储空间位于https://developer.qiniu.com/kodo/manual/1671/region-endpointqiniuToken:从后端获取到的tokenbeforeUpload(file){letthat=thisletputExtra={fname:file.name,params:{},mimeType:["image/png","image/jpeg","image/gif"]};让observe={next(res){},error(err){},complete(res){}};letconfig={useCdnDomain:true,};letobservable=qiniu.upload(file,'pageapi_'+(newDate()).valueOf()+file.name.replace(/.*\./,'.'),this.qiniuToken,putExtra,config)observable.subscribe(observe)},qiniu.upload(file:blob,key:string,token:string,putExtra:object,config:object)file:Blob对象,上传的文件key:文件资源名token:上传验证信息,前端通过接口请求后端获取config:objectputExtra:参考https://developer.qiniu.com/kodo/sdk/1289/nodejshttps://developer.qiniu.com/kodo/sdk/1283/javascript此链接:https://blog.qianxiaoduan.com/archives/1065