1

我对 RoR 中的 Omnicontacts gem 有一些问题。当我从 Gmail 导入朋友时,它总是返回空数组。我的config/omnicontacts.rb

 require 'omnicontacts'

 Rails.application.middleware.use OmniContacts::Builder do
  importer :gmail, "775603091912-87u7d1bqgjrbsau8mtonb1pgp8nao386.apps.googleusercontent.com", 
                   "j3ymIJ0l3kEkGycqUzqkt-dJ"
 end

代码OmniContactsController

  class InvitesController < ApplicationController

  def contact_callback
    @contacts = request.env['omnicontacts.contacts']
    @user = request.env['omnicontacts.user']
    puts "List of contacts of #{user[:name]} obtained from #params[:importer]}:"
    @contacts.each do|contact|
      puts "Contact found: name => #{contact[:name]}, email => #{contact[:email]}"
    end
  end

  def index
    @contacts = request.env['omnicontacts.contacts']
    respond_to do |format|
      format.html
    end
  end

end

路线.rb

Rails.application.routes.draw do
  get "/invites/:provider/contact_callback" => "invites#index"
  get "/contacts/failure" => "invites#failure"
end

请帮帮我!谢谢!

4

1 回答 1

0

我相信:

importer :facebook, "client_id", "client_secret", {
         :redirect_path => "/contacts/facebook/callback"
}

实际上应该是

importer :facebook, "client_id", "client_secret"

:redirect_path查看文档,我认为在处理 facebook 时不需要。此外,在公共论坛上发布您的 client_id 和 client_secret 也不是一个好主意。

于 2014-07-10T16:19:01.473 回答