rails ruby ssl httparty

ruby - rails - ¿Cómo hago que HTTParty ignore SSL?



httparty post (3)

Estoy usando un servidor local para probar una aplicación y hacer solicitudes a ese servidor desde mi propia máquina.

El SSL del servidor de prueba es malo, y HTTParty arroja errores debido a eso. Según lo que leí, HTTParty debería ignorar SSL de forma predeterminada, pero cuando intento hacer esto:

HTTParty.get( "#{ @settings.api_server }#{ url }" ).parsed_response

Lanza este error:

OpenSSL::SSL::SSLError at / SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed

¿Cómo hago para que ignore el SSL?


En la última HTTParty, puede usar la opción de verificación para deshabilitar la verificación SSL;

HTTParty.get( "#{ @settings.api_server }#{ url }", :verify => false ).parsed_response


Para hacer que HTTParty omita siempre la verificación del certificado SSL, y no tiene que especificar esto en cada llamada:

require ''httparty'' HTTParty::Basement.default_options.update(verify: false) HTTParty.get("#{@settings.api_ssl_server}#{url1}") HTTParty.get("#{@settings.api_ssl_server}#{url2}") HTTParty.get("#{@settings.api_ssl_server}#{url3}") # ...

También puede hacer esto con alcance a una clase cuando se incluye HTTParty como un módulo:

require ''httparty'' class Client include HTTParty default_options.update(verify: false) end Client.get("#{@settings.api_ssl_server}#{url1}") Client.get("#{@settings.api_ssl_server}#{url2}") Client.get("#{@settings.api_ssl_server}#{url3}")

O

require ''httparty'' module APIHelpers class Client include HTTParty default_options.update(verify: false) end end World(APIHelpers) Client.get("#{@settings.api_ssl_server}#{url1}") Client.get("#{@settings.api_ssl_server}#{url2}") Client.get("#{@settings.api_ssl_server}#{url3}")


Si aún desea enviar sus certificados, use esta bandera:

verify_peer: false