当我的本地域未在Yahoo注册时,如何让Yahoo OAuth在本地开发时工作?

当我的本地域未在Yahoo注册时,如何让Yahoo OAuth在本地开发时工作?,oauth,localhost,yahoo,Oauth,Localhost,Yahoo,我正在开发一个使用Yahoo OAuth的应用程序。OAuth一直运行良好,但我刚刚在Yahoo注册了我的域名,现在当我在本地开发时,它不允许我使用OAuth,因为 “不允许使用自定义端口,或者主机未使用此使用者密钥注册。” 问题是因为我的回拨URL指向一个未向Yahoo()注册的域 我不知道该怎么办。我也是一个新的发展,所以如果你可以具体的建议,这将是可怕的!非常感谢您的帮助。类似问题的一些答案可能会有帮助(或没有帮助): 编辑:更多证据雅虎!不支持此选项:Hiii。。。雅虎在本地主

我正在开发一个使用Yahoo OAuth的应用程序。OAuth一直运行良好,但我刚刚在Yahoo注册了我的域名,现在当我在本地开发时,它不允许我使用OAuth,因为 “不允许使用自定义端口,或者主机未使用此使用者密钥注册。”

问题是因为我的回拨URL指向一个未向Yahoo()注册的域

我不知道该怎么办。我也是一个新的发展,所以如果你可以具体的建议,这将是可怕的!非常感谢您的帮助。

类似问题的一些答案可能会有帮助(或没有帮助):


编辑:更多证据雅虎!不支持此选项:

Hiii。。。雅虎在本地主机上工作:)。。您需要做的是,在注册yahoo用户密钥和密钥时,注册页面会询问您的应用程序类型。我猜它给了你两个选择,网站和订单一个作为独立的应用程序。根据您的情况选择独立应用程序。然后它将给您一对密钥,并且它将在localhost:)上工作。享受吧

我发现最简单的解决方案就是为我的开发环境注册一个单独的密钥。只要您不验证该密钥的域,您就不应该遇到任何问题。

在此处处理注释,因为我无法进行注释。如果将
127.0.0.1
指定为回调域,则应该能够将回调与独立应用程序一起使用。您可能还需要更改本地服务器正在侦听的端口,因为您无法请求yahoo使用端口8000。确保您的本地服务器正在侦听端口80。

经过多次尝试,我也得出结论,Yahoo的重定向uri似乎不适用于80以外的端口

对我有效的一个解决方案是:

  • 下载
  • 运行应用程序并在控制台中输入ngrok http xxxx,其中xxxx是您尝试访问的端口
  • 该命令将生成一个转发链接,可用于雅虎的需要
  • 在中创建新的已安装的应用程序,并在回调域字段中输入
  • 链接现在应该可以使用此重定向\u uri

  • 在撰写本文时,将应用程序类型设置为“已安装的应用程序”,然后将回调域保留为空将导致错误

    有效的方法是将127.0.0.1配置为应用程序的回调域。无论您选择Web应用程序还是已安装的应用程序作为应用程序类型,此功能都有效。然而,雅虎!不接受包含端口的回调URL,因此在本地运行时,您必须确保应用程序侦听端口80(或443,如果是https)

    另一个不太理想的选择是使用一些随机不存在的域,如
    local.dev.env.com
    作为回调域,然后添加以下内容:

    127.0.0.1 local.dev.env.com
    

    这将把
    local.dev.env.com上的所有请求转发到
    127.0.0.1

    我也遇到了同样的问题,你有没有想出解决方案?Netflix和Google的OAuth可以很好地使用localhost:8080作为回调的主机。谢谢你的提示!完全有效!不知道如果我们在部署之前不能进行测试,我们会做什么…特别是考虑到他们文档的精彩状态:P谢谢!看到对答案有帮助的评论,感觉很棒!干杯酷。如果您发现此答案有用,请接受此答案。当我在YDN中创建应用程序作为已安装的应用程序,然后在请求验证时提供回调uri时,此答案不起作用。它显示了
    嗯,哦,好像出了什么问题
    屏幕。你知道哪里不对吗?