2014-12-04 161 views
0

我試圖從本教程學習一些紅寶石HTTP請求響應代碼 -語法錯誤 - 意外tASSOC

http://danknox.github.io/2013/01/27/using-rubys-native-nethttp-library/

到目前爲止的代碼 -

require "net/http" 
require "uri" 

uri = URI.parse("http://api.random.com") 
http = Net::HTTP.new(uri.host, uri.port) 

# Continuing our example from above 

request = Net::HTTP::Get.new("/search?question=somequestion") 
response = http.request(request) 

response.code 
=>"200" 
response.body 
=> # Raw response body would go here needing to be parsed 

錯誤 -

Test.rb:13: syntax error, unexpected tASSOC, expecting $end 
=> "200" 
^

我不知道爲什麼會發生這種情況。我刪除了空間,錯誤依然存在。我看到3-4堆棧溢出帖子,但他們沒有幫助。

+0

什麼是'=>「200」?它看起來像是從irb上剪切粘貼的東西。編輯:啊,從鏈接文章來看,似乎是這樣,儘管作者沒有說清楚。 – 2014-12-04 21:10:09

回答

2

您應該註釋掉代碼中以=>開頭的兩行。這些意味着是解釋該方法的返回值應該是什麼的註釋,但不知何故,它們沒有註釋,Ruby解釋器試圖將它們解析爲代碼。

puts response.code # => "200" 
puts repsonse.body # => Raw response body 
+0

非常感謝。我現在得到一個錯誤未初始化的常量HTTPSuccess(NameError)。不知道我是否應該爲此提出額外的問題。 – stack1 2014-12-04 21:22:39

+0

是的,一個額外的問題將是適當的。 – 2014-12-04 21:25:33