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