class PPC::API::Baidu

Public Class Methods

process(response, key, &func) click to toggle source
# File lib/ppc/api/baidu.rb, line 21
def self.process(response, key, &func)
  '''
  Process Http response. If operation successes, return value of given keys.
  You can process the result using function &func, or do nothing by passing 
  block {|x|x}
  =========================== 
  @Output: resultType{ desc: boolean, failure: Array,  result: Array }

  failure is the failures part of response\'s header
  result is the processed response body.
  '''
  result = {}
  result[:succ] = response['header']['desc'] =='success'
  result[:failure] = response['header']['failures']
  result[:result] ||= func[ response['body']['data'] ] rescue nil
  result[:rquota] = response['header']['rquota'] if response['header']['rquota']
  result[:no_quota] = (response['header']['failures']['code'] == '8501') rescue false
  result
end
request_uri(param) click to toggle source
# File lib/ppc/api/baidu.rb, line 17
def self.request_uri(param)
  URI("https://api.baidu.com/json/sms/service/#{param[:service]}Service/#{param[:method]}")
end