1

我正在尝试使用github 上的 omnicontacts gem导入 yahoo 联系人。但是文档只显示了如何在 Ruby on Rails 中使用。我想使用 Sinatra 或只是一个 ruby​​ 脚本。

这是 gem 和文档:omnicontacts gem on github 过去几个小时我一直在网上研究任何资源,但我没有得到任何资源。如果有人可以提供帮助,我将不胜感激。

4

2 回答 2

2

该示例显示了将 gem 用作中间件;所以建议一种在 Sinatra 中使用中间件的方法:

内容config.ru

require 'sinatra'
require 'omnicontacts'

use OmniContacts::Builder do
  importer :gmail, "client_id", "client_secret", {:redirect_path => "/oauth2callback", :ssl_ca_file => "/etc/ssl/certs/curl-ca-bundle.crt"}
  importer :yahoo, "consumer_id", "consumer_secret", {:callback_path => '/callback'}
  importer :hotmail, "client_id", "client_secret"
  importer :facebook, "client_id", "client_secret"
end
于 2014-12-30T16:44:21.257 回答
1

您正在使用 Web 服务器,因此您可能想使用Web 服务器的授权流程:查看以了解流程。

简而言之:您需要提供用户同意链接,从 Yahoo 获取代码,然后请求 OAuth2 令牌。

您可以在此处此处找到 Sinatra + OmniAuth 的工作代码。

雅虎在这里有几个 Ruby 示例:https ://developer.yahoo.com/ruby/

您也可以考虑使用CloudSponge.com等导入服务,它为多个联系人来源(如 Yahoo、Gmail、Linkedin、Outlook/Hotmail、AOL、Facebook 等)提供 Ruby API。

免责声明:我为 CloudSponge 工作。

于 2014-12-30T23:41:24.210 回答