2

在我的 mvc3 应用程序中,我对所有提供程序都使用了 DotNetOpenAuth,除 Chrome 之外的所有浏览器都运行良好。有时,当我单击 Facebook 图标登录时,只有我收到以下错误消息。

错误”:{“消息”:“无效的redirect_uri:应用程序配置不允许给定URL。”,“类型”:“OAuthException”,“代码”:191}

在少数计算机上并非在所有计算机上都面临这个问题。请帮我解决这个问题。

4

1 回答 1

2

我怀疑这实际上是一个浏览器问题。在您的不同浏览器窗口之间,您网站的 URL 很可能存在细微差别。查找大小写差异,或 HTTP 与 HTTPS、尾部斜杠等。redirect_uri 中使用的 URL 必须与应用程序的 Facebook 注册页面中显示的完全相同(在规范中设置的边界内,通常允许添加查询字符串参数IIRC)。

如果您的站点允许来自多个 URL(HTTP 与 HTTPS、不同的主机名等)的访问,您必须注意在开始 OAuth 流程之前将用户重定向到规范化的 URL,或者您必须明确提供规范化的 redirect_uri 参数DotNetOpenAuth 的值,以便库默认情况下不会接收请求 URL。

于 2012-05-02T00:12:07.873 回答