class Baidupan::Base

Attributes

body[R]
response[R]

Public Class Methods

common_params(method, params={}) click to toggle source
# File lib/baidupan.rb, line 52
def common_params(method, params={})
  params = {access_token: Config.access_token}.merge(params)
  params.merge!(method: method)
end
get(url, params={}, opts={}) click to toggle source
# File lib/baidupan.rb, line 44
def get(url, params={}, opts={})
  new(url, :get, params, nil, opts).run!
end
new(url, method=:get, params={}, body={}, opts={}) click to toggle source
# File lib/baidupan.rb, line 17
def initialize(url, method=:get, params={}, body={}, opts={})
  @options = {
    method: method,
    headers: {"User-Agent"=>"Mozilla/5.0 (X11; Linux x86_64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1"},
    params: params
  }
  @options.merge!(body: body) if body
  @options.merge!(opts)
  @request = Typhoeus::Request.new(url, @options)
  @request.on_complete do |response|
    @response = response
    if response.success?
      if response.headers["Content-Disposition"] =~ /attachment;file/ or response.headers["Content-Type"] =~ /image\//
        @body = response.body
      else
        @body = MultiJson.load(response.body, symbolize_keys: true)
      end
    end
  end
end
post(url, params={}, body={}, opts={}) click to toggle source
# File lib/baidupan.rb, line 48
def post(url, params={}, body={}, opts={})
  new(url, :post, params, body, opts).run!
end

Public Instance Methods

run!() click to toggle source
# File lib/baidupan.rb, line 38
def run!
  @request.run
  self
end