ES6 页面重定向
重定向只不过是一种将搜索引擎和用户发送到与原始 URL 不同的 URL 的机制。重定向的页面可以在同一台服务器上,也可以在不同的服务器上。它也可以在同一网站或不同网站上。
重定向到未请求的不同页面是通过使用 ECMAScript 2015 或 ES6 完成的。有几种方法用于执行页面重定向,例如location.href、location.replace()、等等。
让我们尝试了解一些方法JavaScript 用于页面重定向。
window.location 和 window. location.href
window.location 对象是 window 对象的一个属性。有几种方法可以重定向网页。几乎所有方法都与window.location 对象相关。
它可用于获取当前URL 的地址或网址。 window.location 对象无需添加window 前缀即可编写。
示例
window.location = " https://bianchenghao6.com/";
location.replace()
是常用的window.location对象之一。它用于用新的文档替换原始文档。
在这个方法中,我们可以传递一个新的 URL,然后它会执行一个 HTTP 重定向。
语法
window.location.replace("new URL");
示例
window.location.replace("https://bianchenghao6.com/");
location.assign()
此方法用于在浏览器窗口中加载新文档。
location 的区别.assign() 和 location.replace() 方法是 replace() 方法删除当前的 URL 来自文档的历史记录。因此,将无法执行返回导航。在这种情况下,我们不能使用后退按钮。
为了避免这种情况,我们应该使用 location.assign() 方法,因为它会加载一个新的浏览器文档。
语法
window.location.assign("https://bianchenghao6.com/");
location.reload()
该方法用于动态重新加载当前文档。我们可以指定一个布尔参数,true 或 false。如果参数值为真,则该方法将强制浏览器从服务器重新加载页面。但如果它是 false 或未指定,那么浏览器可能会从缓存中重新加载页面。
示例
window.location.reload("https://bianchenghao6.com/");
window.navigate()
此方法仅在 Internet Explorer 中可用,因为所有其他浏览器都删除了此方法。它类似于为 window.location.href 属性分配一个新值。
示例
window.navigate("https://bianchenghao6.com/");
搜索引擎优化和页面重定向
通常,搜索引擎不会分析 JavaScript 来检查重定向。所以,如果需要通知搜索引擎(SEO)关于URL转发,我们需要添加rel = "canonical" 标签在网页的头部部分。
示例
<link rel = "canonical" href = "https://bianchenghao6.com/" />