обуздать сообщение над ssl - PullRequest
       20

обуздать сообщение над ssl

0 голосов
/ 24 января 2012

как вы можете сделать пост через https с помощью curb ruby ​​gem?

Вот как я делаю это через 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 я бы использовал use_ssl = true, но как это сделать с бордюром?

Пост отправляется приложению, запущенному на heroku, и ошибка, которую я получаю сейчас:

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

Спасибо.

Ответы [ 2 ]

0 голосов
/ 13 марта 2012

Похоже, у вас плохие сертификаты и должна быть возможность доверять неподписанным.

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

Также попробуйте бордюр-фу драгоценный камень. Там вы можете сделать ssl сообщение как

form_data = { :color => 'red', :shape => 'sphere' }
response = CurbFu.post({:url => "https://example.com", :protocol => "https"}, form_data)
0 голосов
/ 24 января 2012

Вы пробовали c = Curl::Easy.new("https://www.myserver.com/upload_messages") (обратите внимание на https вместо http на URL), потому что в этом примере (https://github.com/taf2/curb/blob/master/samples/gmail.rb) от Curb's Github (что, я полагаю, работает, сам не пробовал) они пишутв Gmail через https просто так.

...