js 获取重定向后的地址
时间: 2024-10-12 14:05:22 浏览: 16
在JavaScript中,获取浏览器因重定向而改变后的URL通常发生在`window.location`对象上。当你发送一个HTTP请求并期望服务器响应一个302或303状态码,这表示一个临时或永久重定向,你可以通过监听`location.href`的变化来获取新的地址。
例如:
```javascript
function handleRedirect() {
const redirectUrl = window.location.href;
console.log('Redirected to:', redirectUrl);
}
// 如果你的页面需要处理重定向,可以添加以下事件监听
window.addEventListener('popstate', handleRedirect); // 对于浏览器历史记录的更改
window.addEventListener('hashchange', handleRedirect); // 对于# URL片段的变化
```
如果你正在使用异步请求库(如axios或fetch),可以在接收到重定向响应时设置一个新的URL:
```javascript
axios.get('/redirect')
.then(response => {
if (response.headers.location) { // 检查是否为重定向
window.location.href = response.headers.location; // 设置新的URL
}
});
```
请注意,以上示例基于服务器对客户端发起请求的响应来进行重定向,如果是页面内部的跳转,可以直接修改`location.href`。