关于小程序中图片转换为base64格式的方法

发布于 6 年前作者 ucheng14799 次浏览最后编辑 6 年前来自 ask

在做一个花卉识别的小程序,接口规定需要上传的是base64格式的图片。

在小程序中测试了确实有FileReader对象,readAsDataURL方法也是有的

通过chooseImage上传图片得到tempFilePath

{path: “wxfile://tmp_713446332o6zAJs2J8Y_akx660xBvls13t1aQ79edf96a81428a0cbbd12d556491c41d.png”, size: 1325}

然后把这个作为参数传入readAsDataURL就报错了

这是报错

TypeError: Failed to execute ‘readAsDataURL’ on ‘FileReader’: parameter 1 is not of type ‘Blob’

应该是微信chooseImage上传图片生成的是临时路径,FileReader对象获取不到图片?

不知道这里如何解决比较合适

4 回复
jun57
jun571 楼6 年前

@楼上,放弃吧,我之前已经翻了论坛所有关于这个问题的贴,都没有解决方案,只能通过服务端转了,趁早找找其它方法吧

echen
echen2 楼6 年前

解决了没?

rye
rye3 楼6 年前

同问  有没有解决啊

eqiao
eqiao4 楼4 年前

同问,不过你这个报错,是readAsDataURL方法里面的参数应该是Blob类型的,你传入的tempFilePath不是Blob类型,所以才报的错。


所以我们的问题应该是:怎么通过chooseImage把图片转成Blob