Как использовать Typhoeus :: Request объект используя https - PullRequest
0 голосов
/ 27 апреля 2019

Я пытаюсь сделать запрос https, используя объект Typhoeus::Request, и я не получаю его работу.

Код, который я запускаю, выглядит примерно так:

url = "https://some.server.com/"
req_opts = {
 :method => :get,
 :headers => { 
      "Content-Type"=>"application/json",
      "Accept"=>"application/json"
  },
 :params=>{},
 :params_encoding=>nil,
 :timeout=>0,
 :ssl_verifypeer=>true,
 :ssl_verifyhost=>2,
 :sslcert=>nil,
 :sslkey=>nil,
 :verbose=>true
}
request = Typhoeus::Request.new(url, req_opts)
response = request.run

Я получаю ответ:

HTTP/1.1 302 Found
Location: https://some.server.com:443/
Date: Sat, 27 Apr 2019 02:25:05 GMT
Content-Length: 5
Content-Type: text/plain; charset=utf-8

Почему это происходит?

1 Ответ

1 голос
/ 27 апреля 2019

Ну, это трудно понять, потому что ваш пример не является достижимым URL. Но я вижу две вещи: вы не передаете ssl-сертификат или ключ. Но также 302 указывает на перенаправление. Вы можете попытаться выполнить перенаправление, но вашей первой проблемой, вероятно, является то, что вам не нужно устанавливать параметры SSL, почему вы?

Проверьте, попробуйте ли вы следующие варианты:

req_opts = {
 :method => :get,
  :headers => {
    "Content-Type"=>"application/json",
    "Accept"=>"application/json"
   },
    :params=>{},
    :params_encoding=>nil,
    :timeout=>0,
    :followlocation => true,
    :ssl_verifypeer=>false,
    :ssl_verifyhost=>0,
    :verbose=>true
  }

Для получения дополнительной информации см. Следующие разделы

https://github.com/typhoeus/typhoeus#following-redirections https://github.com/typhoeus/typhoeus#ssl

...