2

标题非常神秘,但基本上发生的事情是我正在使用以下 url 调用 Google Places Photo API

https://maps.googleapis.com/maps/api/place/photo?key=123456789&photoreference=CnRvAAAAV_35nLjUhcQXkoVdwN2YGP58Z3trNMDCRXznXqR2_0FbxXv60ssT2JN0ryI_ZP9-371u3JycqlH5oxLy8-bo2IkbkAfWD7fjyiytcEtWmk76Cseyxj9OlDozspXy8Cu7NFphl4N1AXSnj6QadSy6fxIQvc6Kiai-6HxMphQ7WCmYpBoUwxVnwEHl5zo0EbuoWCObJYTmAuA&maxwidth=400&maxheight=400&sensor=false

(我更改了我的 API 密钥)

通过浏览器访问此链接时,它会重定向到不同的 url:

https://lh3.googleusercontent.com/-WjnhIv4ry4I/T6Wg4kRb4kI/AAAAAAAuqqc/t6yVdN-jcC0/s1600-w220-h151/City%2BRestaurant

我需要一种使用 PHP 获取第二个 URL 的方法。使用 cURL 会给我一个 302“文档已移至此处”消息。

任何人都知道我如何通过 PHP 获取第二个 url?

4

1 回答 1

2

使用 curl 发出请求,curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);这将导致 curl 跟随重定向。

然后,您可以使用curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);which 将为您提供 curl 获取的最后一个有效 URL。

或者,您可以设置CURLOPT_FOLLOWLOCATIONfalse,然后设置CURLOPT_HEADERStrue,然后使用简单的正则表达式自己解析重定向位置。

于 2013-03-08T15:13:25.730 回答