0

我尝试使用 Twitter API 在 Ruby 中学习 REST。

根据https://dev.twitter.com/docs/api/1/get/trends我必须将 GET 请求写入http://api.twitter.com/1/trends.json

我的 Ruby 代码是:

 require 'rubygems'
 require 'rest-client'
 require 'json'

 url = 'http://api.twitter.com/1/trends.json'
 response = RestClient.get(url)

 puts response.body

但是我遇到了下一个错误:

/home/danik/.rvm/gems/ruby-1.9.3-p194/gems/rest-client-1.6.7/lib/restclient  /abstract_response.rb:48:in `return!': 404 Resource Not Found (RestClient::ResourceNotFound)

from /home/danik/.rvm/gems/ruby-1.9.3-p194/gems/rest-client-1.6.7/lib/restclient/request.rb:230:in `process_result'

from /home/danik/.rvm/gems/ruby-1.9.3-p194/gems/rest-client-1.6.7/lib/restclient/request.rb:178:in `block in transmit'


from /home/danik/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:745:in `start'

from /home/danik/.rvm/gems/ruby-1.9.3-p194/gems/rest-client-1.6.7/lib/restclient/request.rb:172:in `transmit'

from /home/danik/.rvm/gems/ruby-1.9.3-p194/gems/rest-client-1.6.7/lib/restclient/request.rb:64:in `execute'

from /home/danik/.rvm/gems/ruby-1.9.3-p194/gems/rest-client-1.6.7/lib/restclient/request.rb:33:in `execute'

from /home/danik/.rvm/gems/ruby-1.9.3-p194/gems/rest-client-1.6.7/lib/restclient.rb:68:in `get'

from TwitterTrends.rb:5:in `<main>'

怎么了?

4

1 回答 1

0

您收到该错误是因为您尝试获取的资源http://api.twitter.com/1/trends.json不存在,如本文档趋势文档中所述

此方法已弃用,并已被 GET trends/:woeid 取代。请使用新端点更新您的应用程序。

您想获取这样的 URL https://api.twitter.com/1/trends/1.json。因此,在您的代码中,尝试执行以下操作:

 require 'rubygems'
 require 'rest-client'
 require 'json'

 url = 'https://api.twitter.com/1/trends/1.json'
 response = RestClient.get(url)

 puts response.body

你应该得到回应。

于 2012-07-22T10:33:05.080 回答