有没有办法在不加载内容的情况下获取重定向网址?

时间:2015-01-03 21:41:35

标签: php rest redirect

我收到服务请求(Beats Service具体),我不想暴露我的client_id。除了可以使用client_id检索的静态图像之外,我能够隐藏它。所以,这是请求:

https://partner.api.beatsmusic.com/v1/api/tracks/tr58141709/images/default?client_id=XXXXXXX

访问此请求时,网址重定向为静态图片。如何在不将内容加载到我的服务器的情况下检索重定向的URL(我只是不想这样做。这可能是一个非常小的开销,因为艺术品的尺寸很小但我不想拥有它)?

我使用Guzzle作为PHP的Http客户端,但这不是我的主要关注点,因为如果我理解这个东西在没有加载内容的情况下如何工作,我将能够执行我想要的内容。

1 个答案:

答案 0 :(得分:1)

使用curl:

$url = 'https://partner.api.beatsmusic.com/v1/api/tracks/tr58141709/images/default?client_id=XXXXXXX';
$ch = curl_init($url);
curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);

// check if we've received a redirect in the Location header
if (array_key_exists('redirect_url', $info)) {
        // do something with the Location header value
        echo $info['redirect_url'];
}