2

我正在尝试从谷歌地方获取图片。一切都在为细节工作:评论,地址......但是当我尝试获取照片时,我得到了 404。

if(place.photos != null){
      for(var i = 0; i < place.photos.length; i++){
        var str = place.photos[i].getUrl({"maxWidth": 100, "maxHeight": 100});
        var res = str.replace("w100-h100-p", "p");
        self.pacPhotos.push({
          id : res

        });

      }
    }else {
      console.log("no photo");
    }
  }

这将返回列表正常,但 URL 格式错误。结果是这样的。

https://lh3.googleusercontent.com/w100-h100-p/AF1QipN3xzffYDPCyEIWnvAQGd3RwNs2C14sVlSqrrAh=k

我收集它想要的是这个。“ https://lh3.googleusercontent.com/p/AF1QipN3xzffYDPCyEIWnvAQGd3RwNs2C14sVlSqrrAh=k

唯一的区别是“w100-h100-”

*** “Sulyman”在这里有一个很棒的解决方法。我知道这不是一个长期的解决方案,因为我确信谷歌会修复他们的结果(如此处所述Place API - getting place photo as marker icon

现在我已经调整了上面的代码以反映 Sulymans 的建议。***

4

1 回答 1

2

似乎每个 API 密钥都会生成不同的路径,例如你得到的w100-h100-p和我得到w200-p 的,好消息是这个部分不管它是什么......都是固定的,所以你可以用另一个字符串替换它p

var str = place.photos[0].getUrl();
var res = str.replace(""w100-h100-p", "p");

或者你可以删除w100-h100-

于 2017-07-06T08:59:58.627 回答