module Reddit_Accessor

Attributes

oath[W]

Public Class Methods

new(key, id, username, password, useragent) click to toggle source
# File lib/redditaccessor.rb, line 6
def initialize(key, id, username, password, useragent)
  @key = key
  @id = id
  @username = username
  @password = password
  @user_agent = useragent
  @oath = get_oath_token
end

Public Instance Methods

access_api_delete(url, params) click to toggle source
# File lib/redditaccessor.rb, line 47
def access_api_delete(url, params)
  HTTParty.delete(url, 
              :headers => {"Authorization" => "bearer #{@token}",
                                'user-agent' => @user_agent },
              :query => params
              )
              
end
access_api_get(url, params) click to toggle source
# File lib/redditaccessor.rb, line 29
def access_api_get(url, params)
  HTTParty.get(url, 
              :headers => {"Authorization" => "bearer #{@token}",
                                'user-agent' => @user_agent },
              :query => params
              )

end
access_api_post(url, params) click to toggle source
# File lib/redditaccessor.rb, line 38
def access_api_post(url, params)
  HTTParty.post(url, 
              :headers => {"Authorization" => "bearer #{@token}",
                                'user-agent' => @user_agent },
              :query => params
              )
              
end
access_api_put(url, params) click to toggle source
# File lib/redditaccessor.rb, line 56
def access_api_put(url, params)
  HTTParty.put(url, 
              :headers => {"Authorization" => "bearer #{@token}",
                                'user-agent' => @user_agent },
              :query => params
              )
end
get_oath_token() click to toggle source
# File lib/redditaccessor.rb, line 15
def get_oath_token
  auth = {:username => @id,
         :password => @key}
  token_info = HTTParty.post("https://www.reddit.com/api/v1/access_token",
    :basic_auth  => auth,
    :headers => {'user-agent' => @user_agent },
    :body => { :grant_type => 'password',
              :username =>  @username,
              :password => @password,
              }
                 )
  token_info
  @token = token_info["access_token"]

  def access_api_get(url, params)
    HTTParty.get(url, 
                :headers => {"Authorization" => "bearer #{@token}",
                                  'user-agent' => @user_agent },
                :query => params
                )

  end

  def access_api_post(url, params)
    HTTParty.post(url, 
                :headers => {"Authorization" => "bearer #{@token}",
                                  'user-agent' => @user_agent },
                :query => params
                )
                
  end

  def access_api_delete(url, params)
    HTTParty.delete(url, 
                :headers => {"Authorization" => "bearer #{@token}",
                                  'user-agent' => @user_agent },
                :query => params
                )
                
  end

  def access_api_put(url, params)
    HTTParty.put(url, 
                :headers => {"Authorization" => "bearer #{@token}",
                                  'user-agent' => @user_agent },
                :query => params
                )
  end
end