class Fanfou::Fanfou
Public Class Methods
new(consumer_key, consumer_secret, oauth_base_url = "http://fanfou.com", api_base_url = "http://api.fanfou.com")
click to toggle source
# File lib/fanfou.rb, line 14 def initialize(consumer_key, consumer_secret, oauth_base_url = "http://fanfou.com", api_base_url = "http://api.fanfou.com") @consumer_key = consumer_key @consumer_secret = consumer_secret @oauth_base_url = oauth_base_url @api_base_url = api_base_url end
Public Instance Methods
_encode(arg)
click to toggle source
# File lib/fanfou.rb, line 7 def _encode(arg) a = "" arg.each { |k,v| a += "#{k}=#{v}&" } a[0..-2] end
access_token()
click to toggle source
# File lib/fanfou.rb, line 80 def access_token @access_token end
fanfou_request(path, args = {})
click to toggle source
# File lib/fanfou.rb, line 57 def fanfou_request(path, args = {}) path += ".json" if not @access_token raise 'No Access Token Set!' end method = :get method = :post if args[:post_args] if args[:get_args] path += "?" + _encode(args[:get_args]) end if method == :get response = @access_token.get(path) else response = @access_token.post(path, args[:post_args]) end if response.code != "200" raise "Network Error #{response.code}: #{response.msg}" end JSON::parse(response.body) end
get_access_token(request_token, request_token_secret, verifier)
click to toggle source
# File lib/fanfou.rb, line 31 def get_access_token(request_token, request_token_secret, verifier) @consumer = OAuth::Consumer.new( @consumer_key, @consumer_secret, { :site => @oauth_base_url, } ) @request_token = OAuth::RequestToken.new( @consumer, request_token, request_token_secret ) @access_token = @request_token.get_access_token(:oauth_verifier => verifier) set_access(@access_token.token, @access_token.secret) end
request_token()
click to toggle source
# File lib/fanfou.rb, line 77 def request_token @request_token end
set_access(access_token, access_token_secret)
click to toggle source
# File lib/fanfou.rb, line 47 def set_access(access_token, access_token_secret) @api_client = OAuth::Consumer.new( @consumer_key, @consumer_secret, { :site => @api_base_url, } ) @access_token = OAuth::AccessToken.new(@api_client, access_token, access_token_secret) end