是否有REDIRECT URIS OAuth 2.0的命名标准?

时间:2014-09-11 14:38:22

标签: c# asp.net asp.net-mvc oauth

我只想知道REDIRECT URIS上是否有命名标准: Twitter,LinkedIn,微软,Facebook和谷歌在使用OAuth 2.0时?

因为,如果我这样编写我的域名:http://domain.com/account/external-signin.aspx除了Twitter和Facebook之外,每个外部登录都会停止工作。名称account / external-signin.aspx是我正在使用的真实网址,我应该为每次外部登录提供。

所以,微软给出了这个错误: 我们无法完成您的请求 Microsoft帐户遇到技术问题。请稍后再试。

LinkedIn: redirect_uri无效。该值必须与使用API​​密钥注册的URL匹配。

谷歌 那是一个错误。错误:redirect_uri_mismatch

如果我删除了.aspx页面扩展名,它似乎可以正常工作,虽然我故意写了一个错误的网址,如http://domain.com/sign-googlehttp://domain.com/sign-microsoft等...

我正在使用MVC5和C#。

我想我错过了一些事情......

感谢您的帮助

3 个答案:

答案 0 :(得分:0)

此错误表示您与要返回的网址不匹配,并且在API服务器上注册了返回URL。当您在服务器上注册应用程序时(对于Google:https://code.google.com/apis/console),您必须确保所使用的网址匹配。

在此之后,你不会得到这个错误,我认为你在服务器上设置了这个属性,http://domain.com/account/external-signin(没有aspx;正如你所说的那样没有扩展但没有扩展)。所以也尝试在服务器上更改它。

答案 1 :(得分:0)

最后,这是正确答案:

不是您选择重定向网址。您必须在应用管理中写下您的domain.com/signin-{suppliername}。

示例:

  1. Microsoft:https://domain.com/signin-microsoft
  2. LinkedIn:https://domain.com/signin-linkedin
  3. Google:https://domain.com/signin-google
  4. Facebook和Twitter可以使用您自己的重定向网址。成功注册后,效果立即生效。希望这可以帮助别人。

    卡琳

答案 2 :(得分:0)

对于Linkedin,请将您的网址添加到“signin-linkedin”.e.g。如果您的网址为http://localhost:{portnumber},请确保将其注册为“http://localhost:{portnumber} / signin-linkedin”链接,这样就可以了。

Happy Codding :)