cordova图片上传,视频上传(上传单个图片,单个视频)

友情提示:

如果保证项目当中只会一次上传一张图片的可以不用下列方法:

只用下载Cordova-plugin-camera获取到图片或视频即可,将他们转化为base64格式,再将base64转化为File中,再将File放进formdata当中就可以上传,

如果不能保证,就用下列方法:

其他获取多张图片的插件会默认将cordova-plugin-file安装,这样会改变js当中的file格式,所以放到formdata中上传会出错,如何修改请看上传多张图片

 

1.下载插件

cordova plugin add cordova-plugin-file-transfer  //上传图片插件(一次只能上传一张)

cordova plugin add cordova-plugin-camera        //获取图片,视频插件,一次只可以获取一张

cordova plugin add cordova-plugin-file              //会改变js中的file格式

2.获取图片,视频

navigator.camera.getPicture((imageData)=>{
      console.log(imageData)
//上传图片视频的函数
uploadImage(imageData) },(err)
=>{ console.log(err) },{ //配置 destinationType: Camera.DestinationType.FILE_URI, sourceType: Camera.PictureSourceType.PHOTOLIBARY, allowEdit: true })

配置API:https://www.w3cschool.cn/cordova/cordova_camera.html

3.上传

function uploadImage(fileURL){
          var ft = new FileTransfer()
          var options = new FileUploadOptions()
      //对应后台的字段 options.fileKey
= 'avatar' options.fileName = fileURL.substr(fileURL.lastIndexOf('/') + 1); var uri = '上传的地址' ft.upload( fileURL, encodeURI(uri), (msg)=>{ console.log('SUCCESS:') console.log(msg) }, (err)=>{ console.log('ERROR:') console.log(err) }, options ) },

配置api:https://www.javascriptcn.com/read-60998.html

 

posted @ 2019-09-24 17:55  走开,不要让我犯错误  阅读(1527)  评论(0编辑  收藏  举报