我使用angular 5从Google Place检索照片URL,如下所示:
...
var request = {
location: new google.maps.LatLng(this.mylat,this.mylng),
radius: 100,
type: this.searchtype
};
let places = new google.maps.places.PlacesService(this.mymap);
places.nearbySearch(request, (results, status) => {
if (status == google.maps.places.PlacesServiceStatus.OK) {
results.forEach((place, index) => {
var img_url = place.photos[0].getUrl({"maxWidth": 200, "maxHeight": 200}); // This URL works only for a few days..
});
}
})
...
这个URL存储在我的Firestore数据库中,以便以后使用。
问题:谷歌地图提供了一个临时URL(仅在几天内有效(。此URL重定向到"真实"(永久(URL。
示例:
临时URL:https://maps.googleapis.com/maps/api/place/js/PhotoService.GetPhoto?1sCmRaAAAAw_I6Al73qDad8ouQIOKMh38e_CRFB3bWj3hh7hBGeJB6YoWfeBfmDQkptvjuoval_kHABgM_yiJlDpmVF7XnMBu0LbhGbekdRCdezWbj4K2_h5scVqs_-peixhu-E83EhBTeZpeIgJsAmzzbCypZg9GhRls6eH4OzIalD2Xy5CuIKrOxbduw&3u200&4u200&5m1&2e1&key=MYKEY&callback=none&代币=26668
真实/永久(重定向到(URL:https://lh3.googleusercontent.com/p/AF1QipO4Xz37yaVeLaLL8ndNQKR93b5qvClsSis11koi=s1600-w200-h200
我如何才能得到这个真实的URL而不是临时的URL?
如果不使用破解的解决方案,我认为googleusercontent
URL是不可检索的。
如果您需要的是图像的永久URL,我建议使用Google的Places web API来检索图像引用,并且可以随时使用该引用来获取图像。