gpt4 book ai didi

javascript - Express.js 和 Angular.js html5mode(避免 url 中的 #)

转载 作者:行者123 更新时间:2023-12-03 05:44:05 27 4
gpt4 key购买 nike

我一直在努力避免在带有 ExpressJS 服务器端的 Angular 应用程序中使用 #。我研究了如何启用 html5mode,效果很好。但是,每当有另一个“get”请求从另一个 url(例如/api/services)检索数据时,它似乎不知何故被破坏,并且无法向页面正确提供数据。

这是我在快速结束中所做的事情。

router.get('/*', function (req, res, next) {
res.render('index');
});
router.get('/api/service-edit', function (req, res, next) {
Service.find(function (err, services) {
if (err) {return next(err);}
res.json(services);
});
});

我不是 100% 确定,但我猜是“/*”导致服务器在读取 api url 时出现问题。我想知道你们中是否有人有解决这个问题的经验以及解决这个问题的解决方案。

感谢您的宝贵时间。

最佳答案

在expressjs中,路由规则按照您在代码中呈现的顺序进行匹配。因此,“/*”规则始终首先匹配,而永远不会到达第二个规则。

将第二条规则放在第一条规则之前可能会解决问题。

希望有帮助。

关于javascript - Express.js 和 Angular.js html5mode(避免 url 中的 #),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40404085/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com