Angular 17 在开发环境中不接受带点 (.) 的路径,它只会直接抛出 404 错误

问题描述 投票:0回答:1
export const routes: Routes = [
    { path: 'foo.bar', component: ListComponent },
    { path: 'foobar', component: ListComponent },

example.com/foobar
运行良好,
example.com/foo.bar
返回404

在生产环境中运行良好,但仅在使用

ng serve
时出现在本地开发页面上。这让我调试特定的 url 参数有点困难。

关于此 404 错误,即使我尝试访问的页面未在

routes
中配置,它也应该重定向到默认的
**
/
目的地,而不是直接转到 404。

curl -i http://127.0.0.1:4200/foo.bar

HTTP/1.1 404 Not Found
Access-Control-Allow-Origin: *
Date: Thu, 11 Jan 2024 02:52:11 GMT
Connection: keep-alive
Keep-Alive: timeout=5
Content-Length: 0
curl -i http://127.0.0.1:4200/foobar

HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
Content-Type: text/html
Cache-Control: no-cache
Date: Thu, 11 Jan 2024 02:52:13 GMT
Connection: keep-alive
Keep-Alive: timeout=5
Content-Length: 891

<!doctype html>
<html lang="en">
        <head>
                <script type="module" src="/openai/@vite/client"></script>
...
angular
1个回答
0
投票

Angular CLI 17 默认使用新的 application 构建器。

这意味着您正在结合 esbuild 和 vite 运行代码。

这是 vite 的一个已知问题,应该从

@angular/[email protected]
开始修复。

相关问题:

© www.soinside.com 2019 - 2024. All rights reserved.