我正在开发一个使用 Yahoo OAuth 的应用程序。OAuth 一直运行良好,但是我刚刚将我的域名注册到了 Yahoo,现在当我在本地开发时,它不允许我使用 OAuth,因为“不允许使用自定义端口或未在此使用者密钥中注册主机。”
这个问题是因为我的回调URL指向一个未在 Yahoo 中注册的域名 (http://localhost:8080/welcome)。
我不确定该怎么做。我也是一个新手,如果你能提出具体的建议,那就太好了!非常感谢任何帮助。
我正在开发一个使用 Yahoo OAuth 的应用程序。OAuth 一直运行良好,但是我刚刚将我的域名注册到了 Yahoo,现在当我在本地开发时,它不允许我使用 OAuth,因为“不允许使用自定义端口或未在此使用者密钥中注册主机。”
这个问题是因为我的回调URL指向一个未在 Yahoo 中注册的域名 (http://localhost:8080/welcome)。
我不确定该怎么做。我也是一个新手,如果你能提出具体的建议,那就太好了!非常感谢任何帮助。
嗨...yahoo可以在本地主机上工作 :)..您需要做的是,在注册yahoo用户密钥和秘密密钥时,注册页面会问您的应用程序类型。我想它会给你两个选项,网站和独立应用程序。在您的情况下选择独立应用程序。然后它会为您提供一对密钥,并且可以在本地主机上工作 :).享受吧!
看起来Yahoo!不希望你这样做。类似问题的一些答案可能有帮助(或者没有):
编辑:更多证据表明Yahoo!不支持此操作:http://developer.yahoo.net/forum/?showtopic=6496&cookiecheckonly=1
目前为止,将应用程序类型设置为已安装的应用程序,然后将回调域留空会导致错误。
可行的方法是将127.0.0.1配置为应用程序的回调域。无论您选择Web应用程序还是已安装的应用程序作为应用程序类型,这都有效。但是,Yahoo!不接受带有端口的回调URL,因此在本地运行时,请确保您的应用程序侦听端口80(如果使用https,则为443)。
另一个不太理想的选择是使用一些不存在的随机域,例如local.dev.env.com
作为回调域,然后编辑您的hosts文件,添加以下内容:
127.0.0.1 local.dev.env.com
这将把所有对 local.dev.env.com
的请求转发到 127.0.0.1
。