【问题标题】:Space in routing gives 404路由中的空间给出 404
【发布时间】:2010-10-22 19:38:23
【问题描述】:

我目前定义了这条路线(除其他外): “{controller}/{action}/{id}/{designation}”是:

  • “id”我的主键
  • “名称”仅用于 SEO,不予考虑。

现在我的问题是: “http://server/Home/Index/1/teste”有效,但“http://server/Home/Index/1/teste最后有空格无效

IIS 给了我一个 404 并且 mvc 甚至没有为这个请求启动。

有人遇到过这种行为吗?有什么需要改变的吗?

致以最诚挚的问候

【问题讨论】:

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


    【解决方案1】:

    空格不能用作 url 中的纯文本字符。您必须将其编码为:

    %20

    例如

    http://www.testDomain.com/test%20page
    

    【讨论】:

    【解决方案2】:

    空格是 URL 中的无效字符。浏览器甚至不应该发送它。

    如果您在代码中调用它,请尝试在发送/重定向之前使用HttpUtility.UrlEncode( path )

    【讨论】:

      【解决方案3】:

      看这篇文章:

      "The resource cannot be found." error when there is a "dot" at the end of the url

      它谈到了与“。”类似的问题网址末尾的(点)字符。认为这与您的问题相同。

      【讨论】:

        猜你喜欢
        • 2011-12-20
        • 2019-11-21
        • 2017-06-05
        • 1970-01-01
        • 2012-11-15
        • 2017-04-04
        • 1970-01-01
        • 2014-08-04
        • 2015-03-15
        相关资源
        最近更新 更多