我正在将我的Ruby on Rails应用程序与usps运输系统集成.一旦您提出邮资请求,您需要支付该邮资并且不可退款.
邮资请求将返回一个xml响应,包括base64字符串,这是一个发货标签.
我能够在视图中呈现运输标签,但为了使其万无一失,我希望能够将该base64字符串保存为我的服务器上的图像,以防发生之间的运输标签出现问题(支付为了它)和邮寄,所以它可能会重印,而无需购买新的.
我的第一个想法如下
# Attempt 1
File.open('shipping_label.gif', 'w+') {|f|
f.puts Base64.decode64(base_64_encoded_data)
}
# Attempt 2
File.open('shipping_label.gif', 'w+') {|f|
f.puts Base64.decode64(Base64.decode64(base_64_encoded_data))
}
Run Code Online (Sandbox Code Playgroud)
都没有工作.
从我看到的几个帖子中,我正在尝试这个
x = Base64.decode64("data:image/png;base64,iVBOR....")
File.open('test.png','wb') {|file| file.write x}
Run Code Online (Sandbox Code Playgroud)
但是后来我无法用观众打开图像,我还需要做更多的事吗?