我一直在尝试构建一个将使用 Reddit 的 API 的小机器人。我可以分解并毫无问题地阅读我收到的所有信息,但我还不能发送任何东西。
我想做的是: 将准备好的 JSON 字符串发送到http://www.reddit.com/api/login并在成功或失败时得到某种响应。
如果您需要有关 Reddit API 的更多信息:https ://github.com/reddit/reddit/wiki/API
这是我到目前为止所拥有的:
require 'rubygems'
require 'httparty'
require 'json'
require 'pp'
class Login
include HTTParty
base_uri 'reddit.com/'
default_params :output => 'json'
format :json
def post(message)
options = {:body => JSON.generate(message)}
self.class.post('api/login', options)
end
end
login = Login.new()
pp login.post({'username' => 'USERNAME', 'passwd' => 'PW'})
这段代码给了我以下错误:
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:1060:in `request': undefined method `closed?' for nil:NilClass (NoMethodError)
即使一段非常相似的代码会发布到 Twitter。另外,我不确定我的代码是否真的得到了网站的某种响应。
对我来说,是否使用 HTTParty 并不重要,所以如果您知道更好的方法,请随时分享!
提前致谢!