[英]Email Address in Route URL giving 403 error in Asp.Net Core Web Api
我有使用 ASP.Net Core 5.0 的 Web API 项目 这是我的 GET API URL:
https://myapi.project.com/api/name@email.com
它返回给我 403 Forbidden Access Denied Error 因为可能是 name@email.com 正在更改为 name%40email.com 但是当我最后添加一个参数时它工作正常。 例如:
https://myapi.project.com/api/name@email.com/SomeParameter它在这里工作正常。
任何人都可以帮助我如何在 GET API 路由中正确解析电子邮件地址。
谢谢你
发生的情况是您的请求被 urlencoded,其目的是删除或替换可能具有其他含义的内容。
通常,您的控制器会代表您无需任何努力即可处理此问题,但您可以使用服务器端对其进行解码
https://docs.microsoft.com/en-us/dotnet/api/system.net.webutility.urldecode?view=net-5.0它给你带来了问题,
当谈到您描述的问题时,看起来您必须查看您的路线,您的请求并没有在我怀疑的地方结束。 您可以尝试的一件事是从控制器中删除 Authorize 属性,然后查看您是否点击了正确的控制器,而您可能没有点击。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.