Ruby ssl上的路缘柱

Ruby ssl上的路缘柱,ruby,https,curb,Ruby,Https,Curb,如何使用ruby-gem通过https发送帖子 这是我通过http将文件发布到服务器的方式: c = Curl::Easy.new("http://www.myserver.com/upload_messages") c.multipart_form_post = true post_field = Curl::PostField.content('fieldname', myfile) c.http_post(post_field) 对于net::http,我会使用\u ssl=true,

如何使用ruby-gem通过https发送帖子

这是我通过http将文件发布到服务器的方式:

c = Curl::Easy.new("http://www.myserver.com/upload_messages")
c.multipart_form_post = true
post_field = Curl::PostField.content('fieldname', myfile)
c.http_post(post_field) 
对于net::http,我会使用\u ssl=true,但是如何使用rub呢

这篇文章转到一个在heroku上运行的应用程序,我现在得到的错误是:

Curl::Err::SSLCaertBadFile (Curl::Err::SSLCaertBadFile)

谢谢。

你试过
c=Curl::Easy.new(“https://www.myserver.com/upload_messages“”
(注意url上的https而不是http),因为在本例中()来自于路虎的Github(我认为这是可行的,但我自己还没有尝试过)他们只是通过https发邮件到Gmail上。

看起来你的证书不好,应该有信任未签名邮件的选项

require 'net/http'
require 'net/https'
require 'uri'

url = URI.parse 'https://myname:mypass@mail.google.com/'
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = (url.scheme == 'https')
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
也可以试试gem。在那里,您可以像这样发出ssl post请求

form_data = { :color => 'red', :shape => 'sphere' }
response = CurbFu.post({:url => "https://example.com", :protocol => "https"}, form_data)

是的,我试过了,但我会再检查一遍。实际上,我有一个变量,它接受https,以防它是生产环境。但我会再检查一遍以防万一,然后再报告。谢谢Jorge。路缘也有使用ssl的方法。您应该能够以相同的方式设置它。