Omniauth Yahoo错误:OAuth ::未经授权:401禁止

时间:2011-07-20 13:59:51

标签: yahoo omniauth

对于我们的生产应用程序,我们在yahoo帐户上设置了API。我们获得了消费者密钥和消费者的秘密。

当用户点击访问来自雅虎的联系人时,我们会收到401 Forbidden错误。 Omniauth适用于其他提供商,也适用于分期。它不适用于生产。谁能知道我们缺少什么?

1 个答案:

答案 0 :(得分:3)

我解决了这个问题。这是因为我们注册的方式是错误的。

我们在分段上创建了一个html页面来验证。我们在临时站点进行了测试。

e.g http://staging.myweb.com/ABCDEFG--.html

我们验证后得到了一把钥匙。我们用这把钥匙进行生产。

我们收到错误

OAuth::Problem: consumer_key_rejected

要获得yahoo API用于生产,您必须直接在生产站点进行测试。

e.g http://myweb.com/ABCDEFG--.html

以下是您必须执行的步骤:(如何为OAuth注册yahoo)

  1. 将html文件放入制作并验证
  2. 在“权限”下的“联系人”选项卡中选择“读/写”单选按钮。
  3. 每当您更新权限时,消费者密钥和消费者密钥都会发生变化。
  4. 在您的应用程序中更新您的消费者密钥和消费者密钥。
  5. 访问http://developer.yahoo.com/forum/OAuth/consumer-key-rejected/1258200961000-7a8c4082-46eb-3312-9632-a46af8734ad7

    之后我们仍然有错误。

    OAuth::Unauthorized: 401 Forbidden
    

    这可能是因为我们的雅虎设置允许。 设置可能会遗漏一些东西。它可能不包括社交目录下的个人资料。 所以我们的应用程序无法访问用户的个人资料和401禁止加注。

    要了解OAuth错误代码:

    访问:http://wiki.oauth.net/w/page/12238543/ProblemReporting