Ruby on rails HttpParty对IRB和文件的不同响应
我在一个文件中得到了这个简单的代码,用于使用httpartygem测试API飞行服务Ruby on rails HttpParty对IRB和文件的不同响应,ruby-on-rails,ruby,ruby-on-rails-4,irb,httparty,Ruby On Rails,Ruby,Ruby On Rails 4,Irb,Httparty,我在一个文件中得到了这个简单的代码,用于使用httpartygem测试API飞行服务 require 'httparty' body = { "apiKey": 'xxx', "country": 'IN', "currency": 'INR', "locale": 'en-GB', "originplace": 'DEL', "destinationplace": 'BLR', "outboundDate": '2016-10-14',
require 'httparty'
body = {
"apiKey": 'xxx',
"country": 'IN',
"currency": 'INR',
"locale": 'en-GB',
"originplace": 'DEL',
"destinationplace": 'BLR',
"outboundDate": '2016-10-14',
"adults": 1,
"locationschema": 'Iata'
}
headers = { 'Content-Type' => 'application/x-www-form-urlencoded', 'Accept' => 'application/json'}
@response = HTTParty.post("http://partners.api.skyscanner.net/apiservices/pricing/v1.0/", :body => body,:headers => headers)
puts @response
puts "Response code #{@response.code}"
puts "Reponse header #{@response.headers['location']}"
@sessionKey = @response.headers['location']
sleep 1
@poll = HTTParty.get(@sessionKey.to_s, query: {apiKey: "xxx"})
puts @poll
puts "Polling #{@poll.parsed_response}"
如果我将其保存在像api.rb
这样的文件中,并从终端运行它,除了@response
,终端中的@poll
对象不会显示任何输出。只是一片空白。空白线在那里。
但是
在IRB
中,如果我逐行键入此代码,我将得到@poll
对象的响应
为什么会发生这种情况?可能是因为延误吗?如果您将
sleep 1
更改为,比如说,sleep 10
,它是否有效?刚刚尝试过。还是没有。实际上,如果可以,请检查此处以生成API密钥-。在仪表板中选择旅行API。您可以检查@session\u key
?自动过程和手动过程有何不同?它返回为字符串
,我指的是内容。。。这有什么不同?可能是因为延误吗?如果您将sleep 1
更改为,比如说,sleep 10
,它是否有效?刚刚尝试过。还是没有。实际上,如果可以,请检查此处以生成API密钥-。在仪表板中选择旅行API。您可以检查@session\u key
?自动过程和手动过程有何不同?它返回为字符串
,我指的是内容。。。这有什么不同?