js怎么获取另一个页面的url

js怎么获取另一个页面的url

在JavaScript中获取另一个页面的URL有多种方法,包括使用window.open、window.location和服务器端技术等。 其中,使用window.open方法是比较常见的方式之一。接下来,我们详细探讨如何通过不同的技术手段实现这一目标。


一、使用window.open方法

window.open方法是JavaScript中一个常用的工具,能在新窗口或标签页中打开一个URL,并返回对新窗口的引用。利用这个引用,可以访问新页面的URL。以下是具体步骤:

  1. 打开新页面:

let newWindow = window.open('https://example.com');

  1. 获取新页面的URL:

let newUrl = newWindow.location.href;

console.log(newUrl);

这种方法的优点是直接、简单,但需要注意新页面必须在同一域名下,否则会受到跨域限制。

二、跨域解决方案

在许多情况下,目标页面可能不在同一域名下。此时,JavaScript的跨域限制会阻止直接访问页面内容。为了应对这种情况,可以使用以下几种方法:

1. 使用CORS

跨域资源共享(CORS)允许服务器指定哪些域可以访问其资源。服务器端需要配置CORS头,例如:

Access-Control-Allow-Origin: *

客户端JavaScript代码可以使用fetch或XMLHttpRequest来获取目标URL:

fetch('https://example.com')

.then(response => response.url)

.then(url => console.log(url))

.catch(error => console.error('Error:', error));

2. JSONP

JSONP(JSON with Padding)是一种绕过同源策略的方法。它利用