在页面加载时将正斜杠附加到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的末尾的主要内容,如果未能解决你的问题,请参考以下文章

AS3将正斜杠转换为URL编码字符%2F

在滚动结束时将更多项目附加到 listfragment

PHP将变量附加到地址栏中的url

防止在页面加载时将后缀添加到资源中

Htaccess:从URL添加/删除尾部斜杠

为啥字符和正斜杠被附加到我的 NSURL?