我在我们的 Ruby 1.8.7 项目中有以下方法:
def self.ping_server
request_data = get_request_data
uri = 'another_server.our_company.com'
https = Net::HTTP.new(uri)
https.use_ssl = true
path = "/our_service"
data = request_data.to_json
response = https.post(path, data, {'Content-Type' => 'application/json'})
return response
end
每当我运行此方法时,都会出现以下超时错误:
在 128936 毫秒内完成 500 内部服务器错误
Errno::ETIMEDOUT (Connection timed out - connect(2)):
lib/my_class.rb:51:in `ping_our_server'
我与一位有权访问another_server.our_company.com
. 我的请求没有到达另一台服务器。
我应该怎么做才能让我的请求生效?
编辑:经过进一步检查,这就是我认为正在发生的事情(但我不完全确定):我们的其他服务器将只接受 HTTPS 请求,但看起来我的请求由于某种原因正在通过 HTTP 发送。我需要添加什么来确保我的请求是通过 HTTPS 发送的吗?