Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 重定向后获取URL_Javascript_Reactjs_Url_Redirect - Fatal编程技术网

Javascript 重定向后获取URL

Javascript 重定向后获取URL,javascript,reactjs,url,redirect,Javascript,Reactjs,Url,Redirect,我正在构建一个React应用程序,其中我通过fetch发送一个API get。为了获得正确的API响应,我需要发送一个特定的链接,但是用户可能能够以另一种格式提供这些链接,如果在浏览器中打开,这些链接将重定向到正确的格式 例如: 此链接 重定向到: 如果在浏览器中打开 Javascript中有没有办法从第一个链接中获取第二个链接 谢谢 //编辑: 我正在尝试使用fetch和request。通过以下方式使用请求: import React, {Component} from 'react'; co

我正在构建一个React应用程序,其中我通过fetch发送一个API get。为了获得正确的API响应,我需要发送一个特定的链接,但是用户可能能够以另一种格式提供这些链接,如果在浏览器中打开,这些链接将重定向到正确的格式

例如:

此链接
重定向到:
如果在浏览器中打开

Javascript中有没有办法从第一个链接中获取第二个链接

谢谢

//编辑: 我正在尝试使用fetch和request。通过以下方式使用请求:

import React, {Component} from 'react';
const request = require('request');

class Getlink extends Component {
getRequest = () => {
    request('https://soundcloud.app.goo.gl/u6XXuqp3Q7Q7WXgH8', function (error, response, body) {
    console.error('error:', error); 
    console.log('statusCode:', response && response.statusCode); 
    console.log('body:', body);
});
}

render() {
return (
    {this.getRequest()}
)}
}
这会产生以下错误

Access to fetch at 'https://soundcloud.app.goo.gl/u6XXuqp3Q7Q7WXgH8' from 
origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-
Control-Allow-Origin' header is present on the requested resource. If an 
opaque response serves your needs, set the request's mode to 'no-cors' to 
fetch the resource with CORS disabled.
加上一个GET失败错误


当我在本地执行此操作时,这是正常的反应吗?

重定向url位于
响应.headers.location
中。对于任何重定向响应代码,您都可以使用
headers.location
递归获取URL

例如,对
curl
的响应显示响应代码为
302
Found
),并且重定向url在
位置
标题中指定

curl -s -o /dev/null -D -  https://soundcloud.app.goo.gl/u6XXuqp3Q7Q7WXgH8 

我发现了一些东西,我猜问题与网站有关。我遇到过使用cors anywhere的情况,它确实有助于提出请求,但会返回一个
403禁止的
。您可以在此处尝试:并输入我要解析的url

fetch("https://cors-anywhere.herokuapp.com/https://soundcloud.app.goo.gl/u6XXuqp3Q7Q7WXgH8")
        .then((result) => {
        console.log(result)
    })

如果查询第一个url,您将收到的第一个响应是重定向响应,其中第二个url位于iThanks!请检查我的编辑!谢谢我编辑了我的问题,因为它不适合我?
fetch("https://cors-anywhere.herokuapp.com/https://soundcloud.app.goo.gl/u6XXuqp3Q7Q7WXgH8")
        .then((result) => {
        console.log(result)
    })