岁月总是愈来愈短 日子也总是愈来愈快 珍惜
ROR API 接收 IOS(Iphone/IPAD) post 的图片 (base 64 解决)
IOS 用的是 ASIFormDataRequest
ROR接收的数据像十六进制的东西 如图
流的格式 imagedata bytes 如图:
ror怎么直接使用这个值还真不清楚 单把 二/八/十六 进制的东西转换为图片倒是简单
那么这里隆重推荐 base64
采用Base64编码不仅比较简短,同时也具有不可读性,即所编码的数据不会被人用肉眼所直接看到。
我们网页form提交一个图片 设置类型为 multipart/form-data 我们在后台可以直接得到一个data对象然后上传到服务器
代码示例(直接保存文件):
#file为上传的data
File.open("#{RAILS_ROOT}/public/route_images/#{@filename}", "wb") do |f|
f.write(file.read)
end
那么接收base64位数据ror也有很好的处理
#file为base64数据
path= RAILS_ROOT+"/public/route_images/#{@filename}"
image = Base64::decode64(file)
File.open(path, "wb" ) do |back_out|
back_out << image
end
#此时便把base64保存为一张图片了
| 打印文章 | 这篇文章由Aiice于2011年12月30日 3:01 上午发表在Ruby On Rails。你可以订阅RSS 2.0 也可以发表评论或引用到你的网站。 |

