オンラインで見つけたいくつかのコードを理解するために、IRB で作業しようとしています。
最終的にこのファイルをインポートするファイルを要求できます。
module LinkedIn
module Api
logger.debug "....7"
module QueryMethods
logger.debug "....6"
def profile(options={})
logger.debug "....1"
path = person_path(options)
simple_query(path, options)
end
def connections(options={})
path = "#{person_path(options)}/connections"
simple_query(path, options)
end
def network_updates(options={})
path = "#{person_path(options)}/network/updates"
simple_query(path, options)
end
def company(options = {})
path = company_path(options)
simple_query(path, options)
end
def test(options = {})
logger.debug "helllllooooo"
end
private
logger.debug "....2"
def simple_query(path, options={})
logger.debug "....3"
fields = options.delete(:fields) || LinkedIn.default_profile_fields
if options.delete(:public)
path +=":public"
elsif fields
path +=":(#{fields.map{ |f| f.to_s.gsub("_","-") }.join(',')})"
end
headers = options.delete(:headers) || {}
params = options.map { |k,v| "#{k}=#{v}" }.join("&")
path += "?#{params}" if not params.empty?
Mash.from_json(get(path, headers))
end
def person_path(options)
logger.debug "....4"
path = "/people/"
if id = options.delete(:id)
path += "id=#{id}"
elsif url = options.delete(:url)
path += "url=#{CGI.escape(url)}"
else
path += "~"
end
end
def company_path(options)
path = "/companies/"
if id = options.delete(:id)
path += "id=#{id}"
elsif url = options.delete(:url)
path += "url=#{CGI.escape(url)}"
elsif name = options.delete(:name)
path += "universal-name=#{CGI.escape(name)}"
elsif domain = options.delete(:domain)
path += "email-domain=#{CGI.escape(domain)}"
else
path += "~"
end
end
end
end
end
このコードは LinkedIn のラッパーであり、ここで見つけました: https://github.com/pengwynn/linkedin/blob/master/lib/linked_in/api/query_methods.rb
ほとんど既製品ですが、このテスト ビットは私のものです。
def test(options = {})
logger.debug "helllllooooo"
end
これらのファイルをローカルにコピーし、IRB でいくつかのコマンドを実行できますが、何らかの理由で のようなclient.test
ことはできませんが、 のようなことはできますclient.profile
。
また、デバッグ ステートメントは IRB に表示されません。デバッグを表示するには、何らかのフラグを付けて IRB を開始する必要がありますか?