【问题标题】:AngularJs cannot get route with dot in url on localhostAngularJs 无法在 localhost 的 url 中获取带点的路由
【发布时间】:2020-09-07 14:30:30
【问题描述】:

使用路由提供程序并设置此路由:

.when('/:name/:id', {

当我使用时它可以工作(进入我的路线并执行代码):

https://localhost.myapp.com:9000/Paul/123

但使用此网址不起作用:

https://localhost.myapp.com:9000/Paul/123.456

但我的 id = 123.456,所以我需要使用第二种情况,我收到错误“Cannot GET ...”,所以我认为问题是点。

如果我检查网络选项卡,我会看到浏览器将 123.456 解释为文件,例如 readme.txt,它认为点后面的字符是文件的扩展名。

奇怪的是,它在生产中有效。

关于如何解决这个问题的任何想法?

【问题讨论】:

    标签: javascript angularjs route-provider


    【解决方案1】:

    我已经设法找到了这个问题的答案。它与只出现在我的本地主机上而不是在生产环境中的 webpack 相关(这解释了为什么我只在本地主机上遇到这个问题)。

    我必须在 webpack 配置文件 webpack.dev.jsdevServer 部分下添加此设置:

    historyApiFallback: {
        disableDotRule: true
    }
    

    【讨论】:

      猜你喜欢
      • 2016-06-12
      • 2014-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-30
      • 1970-01-01
      • 2015-08-14
      相关资源
      最近更新 更多