如何在LinkedIn gem中使用字段选择器?

时间:2012-02-18 22:14:14

标签: ruby gem linkedin

我一直在尝试使用LinkedIn gem(0.3.6)进行搜索。我可以使用关键字成功进行身份验证和搜索,但我希望能够使用字段选择器,以便我的结果不仅包含id,名字,姓氏。

在执行规范

时,我没有成功
 fields = [{:people => [:id, :first_name, :last_name, :public_profile_url, :picture_url]}, :num_results]
        client.search(:first_name => 'Giliardi', :last_name => 'Pires', :fields => fields)

有没有人能够让这个工作?

1 个答案:

答案 0 :(得分:0)

似乎gem client.search与github client.search ...不匹配,并且规范基于github client.search。说实话,我无法弄清楚如何使用Gem搜索。它们不包括在api_spec.rb中提供的Gem示例中的搜索规范(没有search_spec)给出404:client.search(:first_name => "Javan", :fields => ["num_results", "total"])

我的建议是从github source构建gem并使用选择器。

宝石:

def search(options={})
      path = "/people-search"
  options = { :keywords => options } if options.is_a?(String)

  if fields = options.delete(:fields)
    path +=":(#{fields.map{ |f| f.to_s.gsub("_","-") }.join(',')})"
  end

  options = format_options_for_query(options)

  result_json = get(to_uri(path, options))
  Mash.from_json(result_json)
end

GitHub的:

def search(options={})
  path = "/people-search"

  if options.is_a?(Hash)
    fields = options.delete(:fields)
    path += field_selector(fields) if fields
    puts path
  end

  options = { :keywords => options } if options.is_a?(String)
  options = format_options_for_query(options)

  result_json = get(to_uri(path, options))

  Mash.from_json(result_json)
end