我正在使用trello api将图像附加到卡上。文档说
require 'uri'
require 'net/http'
url = URI("https://api.trello.com/1/cards/id/attachments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
response = http.request(request)
puts response.read_body
放置密钥和令牌后,我尝试上载文件,二进制数据进入url本身,不仅看起来太丑陋,而且因为请求时间太长而无法使用。我曾尝试使用代码中的multipart和rest客户gem来上传文件并将其附加到trello卡,但是每次遇到诸如错误请求或SSL错误之类的错误时,有人可以给我一段真正有效的代码吗?谢谢 实际上,我是通过AJAX发送图像数据的(我是从charjs视图生成的),所以发送的数据是二进制的,如果解决方案从二进制数据上传图像会更好。
答案 0 :(得分:0)
他们的文档确实鼓励您将整个编码的文件对象添加到URL中,我也觉得这很丑陋。我想知道将它添加到POST正文中是否可行?试试这个:
request = Net::HTTP::Post.new(url)
request.set_form_data({file: put_encoded_file_contents_here})