【问题标题】:%E2%80%8B Appears in url .Net Core%E2%80%8B 出现在 url .Net Core
【发布时间】:2020-07-31 06:46:17
【问题描述】:

我从未遇到过这样的问题,但它显示为路由的一部分,如果我手动输入路由,则结果为404

如果我从 swagger 复制 %E2%80%8B 出现。

我该如何解决这个问题?

.Net Core 2.1

http://localhost/functionCodes/%E2%80%8Btest - 有效

http://localhost/functionCodes/test - 404

【问题讨论】:

    标签: .net asp.net-core url whitespace


    【解决方案1】:

    根据:this chart

    %E2%80%8B 是“零宽度空间”字符的代码。

    它可能是在你不知不觉中被插入的,你可能在你的代码中看不到它,但它就在这里。

    我建议完全删除定义 URL 的字符串(包括周围的引号!)并重新编写它。

    由于你使用ASP.NET,这个路径可能来自Controller中的Action方法名,但解决方法是一样的:完全删除Test()方法名,确保删除一些空格字符在此之前,然后重写它。

    如果你想检查这个,你可以使用一些高级文本编辑器或十六进制编辑器来查看它实际上是在源代码中。

    可能有一些 Visual Studio 扩展也可以帮助您查看这些隐藏字符。

    【讨论】:

    • 我在开发 Angular 应用程序时也遇到了这个问题,当我从 swagger 复制 URL 时,这解决了它。谢谢!!!
    • 我现在也遇到了同样的情况,但是当我从 swagger 复制 URL 时问题就开始了!但是手动输入解决了问题..谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-30
    • 2012-05-07
    相关资源
    最近更新 更多