eig*_*cho 8 c# asp.net-identity asp.net-core razor-pages .net-6.0
我遇到一个问题,即在将授权策略添加到 ASP.NET 6 Web App Program.cs 后,returnurl 的格式不正确。
\n重现问题的步骤:
\n此时一切都按其应有的方式进行。我可以注册新用户并登录。
\nbuilder.Services.AddAuthorization(options => {\n options.FallbackPolicy = new AuthorizationPolicyBuilder()\n .RequireAuthenticatedUser()\n .Build();\n });\nRun Code Online (Sandbox Code Playgroud)\n此时启动应用程序会导致访问损坏的 URL:
\n(在 MS Edge 上)\nHmmm\xe2\x80\xa6 无法访问此页面\n看起来网页位于 https://localhost:7094/Identity/Account/Login?ReturnUrl=%2FIdentity%2FAccount%2FLogin% 3FReturnUrl%3D%252FIdentity%252FAccount%252FLogin%253FReturnUrl%253D%25252FIdentity.......等
\n该 url 无休止地重复,每次循环时都会添加更多“%25F”。
\n将 [AllowAnonymous] 添加到登录和注册页面允许我访问它们,但我仍然无法真正成功注册新用户。注册后,单击“通常会通过电子邮件发送此信息:单击此处确认您的帐户”链接会将我带到一个类似的损坏的 URL:
\nhttps://localhost:7094/Identity/Account/Login?ReturnUrl=%2FIdentity%2FAccount%2FConfirmEmail%3FuserId%3Def48b287-bac4-4b21-afbc-f060e1ba859d%26code%3DQ2ZESjhBS2tOazZqZ1IxSWl3NVdudEJhSUhLckxsY2NMZ yton1JSaVlPYkRLOE50ako2THFWOXRIZ2UzVFB4VmxFZ0JUYWQ0djg2TXNLcVpyS3c2VndEcUtNDG5DdkNBdzhnak95TUQ4U25nSTltU2cvRzNzMUt5ZHgvNGd6WjhFdnlyYUy85RmMzU2g0VHY3WUR hOHl0TVJPay8wbGI1b0JFV3hWcEZNYkQ1S2Q5U1VuNEh6ZlZkOEIROWFEdGxYQVBWR2hIZjVnaENLditwSjJaWUoyMHNWOHp3VzVIanJ4cnh0NEEwUTNHdjZNNlEyRC9ZdUVORmZZOXM3NVZjeWtvcHIrUT09%26re转Url%3D%252Fidentity%252FAccount%252FLogout
\n这会导致数据库中的 EmailConfirmed 列未设置为 True,并且我无法以创建的用户身份登录。
\n有谁知道什么会导致 url 以这种方式格式化?上面的授权代码是我自己添加到项目中的唯一代码,其他所有代码都是默认/脚手架。
\nPre*_*2te 10
这对我有帮助。
我将 [AllowAnonymous] 装饰放在:
我认为如果您也将其添加到ConfirmEmailModel.cshtml.cs,它会对您有用
我不需要注册页面或 2fa 页面。目前看来,如果有人知道更好的解决方案,我会很高兴听到它。
| 归档时间: |
|
| 查看次数: |
662 次 |
| 最近记录: |