【发布时间】:2014-02-13 07:19:40
【问题描述】:
如何将来自FileReader API 的结果的数据URI 转换为可以保存在Ruby 文件系统中的图像文件?
我目前正在尝试做的是使用 base64 解码将 data_uri 字符串如下所示:data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgA... 转换为 base 64 编码字符串,因为根据此stackoverflow answer 我需要将所有空格实例替换为+。答案是 PHP,但我目前正在研究 Ruby 和 Sinatra,所以我不确定它是否仍然适用,但是当使用等效代码时:
src = data_uri.gsub! ' ', '+'
src = Base64.decode64(src)
f = File.new('uploads/' + 'sample.png', "w")
f.write(src)
f.close
我收到以下错误:
undefined method `unpack' for nil:NilClass
我在这里想要实现的是能够将数据 URI 转换为文件。
【问题讨论】: