在页面加载时将正斜杠附加到url的末尾
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在页面加载时将正斜杠附加到url的末尾相关的知识,希望对你有一定的参考价值。
所以在我的网站上,我有几页内容。在其中一个页面上,即使我将浏览器指向example.com/guides
,也会在我的地址栏中附加正斜杠,从而留下example.com/guides/
。要清楚,此页面加载完全正常。当我将地址栏指向example.com/about
时,它会保留原样并加载页面。当我访问example.com/about/
时,它会加载相同的页面并保留正斜杠。以下是我的服务器处理这些get请求的代码:
app.get('/about', (req, res) => {
res.sendFile(__dirname + '/views/about.html');
});
app.get('/guides', (req, res) => {
res.sendFile(__dirname + '/views/guides.html');
});
如您所见,两个html文件的呈现方式完全相同。我在这两个页面中都没有javascript,而且我没有在任何一个页面上加载任何外部库。此指南页面是唯一具有此行为的页面。控制台或我的服务器日志中也没有错误。先感谢您。
编辑:在我的开发人员控制台中检查网络页面后,它返回301 Moved Permanently (from disk cache)
作为GET请求状态代码。
答案
默认情况下,禁用严格路由,因此它将/ guides和/ guides /视为相同,因此无论您访问过什么,都会每次都替换。因此,启用严格的路由
var router = express.Router({ strict: true });
现在它不会将它们视为相同,也不会改变/指南/ guide /。
以上是关于在页面加载时将正斜杠附加到url的末尾的主要内容,如果未能解决你的问题,请参考以下文章