使用rest-client将图像上传到sinatra

时间:2017-09-02 01:26:13

标签: ruby sinatra

我试图将一个图像从ruby脚本上传到我运行Sinatra的服务器,而对于我的生活,我无法弄清楚这一点。

这是我到目前为止所拥有的。

服务器:

InputComponent

Ruby Script:

@Input

Sinatra显示的错误是:
undefined方法`read'for“image.jpg”:String:

哪个有意义,但我只是不知道我做错了什么。

1 个答案:

答案 0 :(得分:0)

我明白了。

服务器:

post '/uploads/:filename' do
  @filename = File.join("./uploads/", params[:filename])
  @datafile = params[:data]
  File.open(@filename, 'wb') do |f| 
    f.write(@datafile[:tempfile].read)
  end
end

客户:

RestClient.post("https://server/uploads/#{file}.jpg",
    :data => File.open("#{file}.jpg", 'rb'))