4

我正在使用omnicontacts gem,以便用户可以在我的网站上邀请他们的联系人。我已经为 Google 成功设置了它。

根据 gem 的自述文件的建议,我已经使用 contacts_callback 方法设置了一个 omnicontacts 控制器。

和一条路线:get "/contacts/:importer/callback" => "omnicontacts#contacts_callback"

在omnicontacts.rb 的初始化程序中,我有以下内容:

require "omnicontacts"

Rails.application.middleware.use OmniContacts::Builder do

importer :gmail, "hidden-client-key", "hidden-secret-key", {redirect_path: "/contacts/gmail/callback"}
importer :facebook, "hidden-client-key", "hidden-secret-key", {:redirect_path => "/contacts/facebook/callback" }
importer :hotmail, "hidden-client-key", "hidden-secret-key", {redirect_path: "/contacts/hotmail/callback"}
end

根据 gem 的自述文件,最后两个(facebook 和 hotmail)不需要redirect_path,但以防万一我用它测试过两者,但我仍然收到redirect_uri 无效的错误。当我在寻找解决方案时,我发现 :redirect_path 是 :callback_path 的地方,并且也尝试过,但没有运气。

在 Microsoft 应用程序(用于 hotmail)上,我得到了关于错误的更长描述:

为输入参数“redirect_uri”提供的值无效。预期值为“ https://login.live.com/oauth20_desktop.srf ”或与为此客户端应用程序注册的重定向 URI 匹配的 URL。

结果,我继续为这个客户端应用程序注册了一个重定向 URI。URI 是与回调路径匹配的http://example.com/contacts/hotmail/callback 。

仍然,得到同样的错误。有什么线索吗?

4

1 回答 1

5

看起来您错过了从您想要访问您的应用程序的位置传递您的域详细信息,请在图像中查看并尝试添加您的域,然后重试..

同样,您需要为 hotmail 应用程序执行此操作

在此处输入图像描述

于 2016-08-01T12:41:26.657 回答