我正在使用 DotNetOpenAuth 使用带有 ASP.NET MVC 4 的 Google 帐户执行我的网站身份验证。我能够在我的 localhost 上运行 Google 身份验证而没有任何问题,但是在部署测试时出现以下错误。
DotNetOpenAuth.Messaging.ProtocolException: return_to '...//myserver/myapp' not under realm '...//myserver/myapp/'.
请注意,return_to 领域参数的唯一区别是尾部斜杠“/”。如果我在浏览器的地址栏中输入 .../myserver/myapp/ (包括尾部斜杠),则该站点可以正常工作。
在浏览器地址栏中输入时,如何让我的应用程序同时接受尾随和缺失的斜杠?
下面是我的代码:
IAuthenticationRequest request = openId.CreateRequest(Identifier.Parse(WellKnownProviders.Google));
FetchRequest fr = new FetchRequest();
fr.Attributes.AddRequired(WellKnownAttributes.Contact.Email);
request.AddExtension(fr);
request.AddExtension(new ClaimsRequest
{
Email = DemandLevel.Require,
});
return request.RedirectingResponse.AsActionResult();
提前感谢您的帮助!