您的位置 首页 > 腾讯云社区

base64转file文件源码记录---何处锦绣不灰堆

场景

我们前后端交互图片的时候,一般我们是用base64进行交互的,但是很多时候我们传递图片的时候很多的后端是需要file文件格式的,而不是base64的,所以这个时候是需要进行一个简单的转变

源码记录 /** * @dataURLtoBlob 转文件格式 */ dataURLtoBlob : function(dataurl) { let arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1], bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n); while(n--) { u8arr[n] = bstr.charCodeAt(n); } return new Blob([u8arr], { type: mime }); }, /** * @param {Object} theBlob 文件 * @param {Object} fileName 文件名字 */ blobToFile : function(theBlob, fileName) { theBlob.lastModifiedDate = new Date(); theBlob.name = fileName; return theBlob; },调用 let blob = that.dataURLtoBlob(data); let file = that.blobToFile(blob, "imgName"); let send_file = new FormData(); send_file.append("upfile", file,"image.png");

send_file就是我们需要的给后端的文件,这篇文章只是用来记录一下,所以不写别的废话了,这里简单的说一下,我们拿到一个base64文件的时候,想验证一下是不是正确的格式的话,那么我们是可以直接放到url里面,他可以识别出图片本身,那么就是一个正确的base64,如果不行,那么就不是一个正确的base64格式的文件,还有就是直接在网上找在线转换的工具,这个是很多的。

谢谢阅读 ---来自腾讯云社区的---何处锦绣不灰堆

关于作者: 瞎采新闻

这里可以显示个人介绍!这里可以显示个人介绍!

热门文章

留言与评论(共有 0 条评论)
   
验证码: