module BaiduLBS::Request

Public Instance Methods

connection(options) click to toggle source
# File lib/baidu_lbs/request.rb, line 29
def connection(options)
  connection = Faraday.new(url: BaiduLBS.api_endpoint) do |builder|
    builder.request :multipart if options[:multipart]
    builder.request :url_encoded
    builder.use FaradayMiddleware::ParseJson
    builder.adapter Faraday.default_adapter
  end
  connection
end
get(path, params = {}, options = {}) click to toggle source
# File lib/baidu_lbs/request.rb, line 6
def get(path, params = {}, options = {})
  request(:get, path, params, options)
end
post(path, params = {}, options = {}) click to toggle source
# File lib/baidu_lbs/request.rb, line 10
def post(path, params = {}, options = {})
  request(:post, path, params, options)
end
request(method, path, params, options) click to toggle source
# File lib/baidu_lbs/request.rb, line 14
def request(method, path, params, options)
  params[:ak] = BaiduLBS.ak unless params[:ak]

  response = connection(options).send(method) do |request|
    case method
    when :get, :delete
      request.url(path, params)
    when :post, :put
      request.path = path
      request.body = params
    end
  end
  response.body
end