gpt4 book ai didi

ruby-on-rails-5 - 通过 Rails 5 API 和 Active Storage 接受图像

转载 作者:行者123 更新时间:2023-12-04 07:20:37 25 4
gpt4 key购买 nike

我正在尝试将图像发送到我的 Rails 应用程序,然后通过 Active Storage 存储它们。

我尝试了 Base64 并直接上传并研究了几个小时,但没有任何效果。

谁能告诉我一个好方法?

我最后的尝试是像这样使用 Base64:

def attach_preview
page = Page.first
content = JSON.parse(request.body.read)
decoded_data = Base64.decode64(content["file_content"].force_encoding("UTF-8"))
begin
file = Tempfile.new('test')
file.write decoded_data
#page.thumbnail = file
filename = "foooo"
page.thumbnail.attach(io: File.read(file), filename: filename)
if page.save
render :json => {:message => "Successfully uploaded the profile picture."}
else
render :json => {:message => "Failed to upload image"}
end
ensure
file.close
file.unlink
end
end

但这会导致 "\xAB"from ASCII-8BIT to UTF-8 错误。

真的不在乎它是 Base64 还是其他什么,我只需要一种方法:-)

最佳答案

这行得通,我直接使用 IO,因为 ActiveStorage 无论如何都需要它。

def attach_thumbnail
content = JSON.parse(request.body.read.force_encoding("UTF-8"))
decoded_data = Base64.decode64(content["file_content"])
io = StringIO.new
io.puts(decoded_data)
io.rewind
@page.thumbnail.attach(io: io, filename: 'base.png')
@page.save
render json: {
success: @page.thumbnail.attached?,
thumbnail_url: url_for(@page.thumbnail),
page: @page
}
end

关于ruby-on-rails-5 - 通过 Rails 5 API 和 Active Storage 接受图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52019109/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com