apr*_*apr 5 ssl ruby-on-rails net-http
我正在开发rails环境.我正在使用Net :: HTTP模块来调用外部API并获得响应.这在我当地的主机上工作正常.但是在暂存它时会抛出Net :: HTTPBadResponse错误.我的暂存是启用SSL的.这是不同的.提供下面的代码段和错误.
parameters = {'VirtualNumber' => '09845xxxxxx','Number[]' => "09878xxxxxx" }
x = Net::HTTP.post_form(URI.parse("https://example.com"), parameters)
Error:
Net::HTTPBadResponse (wrong status line: "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">")
Run Code Online (Sandbox Code Playgroud)
成功的结果将是XML格式.任何人都可以帮我解决这个问题.
谢谢,
问候
问题是从启用 ssl 的站点调用 API。所以在调用API时我们需要启用ssl。除此之外还需要提供基本的身份验证。
parameters = {'VirtualNumber' => '09845xxxxxx','Number[]' => "09878xxxxxx" }
url = URI.parse("https://example.com")
request = Net::HTTP::Post.new(url.path)
request.basic_auth "user", "pass"
request.set_form_data(parameters)
sock = Net::HTTP.new(url.host, url.port)
if url.scheme == 'https'
sock.use_ssl = true
end
response = sock.start {|http| http.request(request) }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2116 次 |
| 最近记录: |