我正在使用Google maps API v3来创建投资组合。
问题:
有没有办法生成默认图片链接,这可以在每个谷歌服务器上运行,或者知道使用什么服务器的方式,以便我可以相应地生成链接?
以下是我目前正在做的一个例子。它可能会或可能不会帮助您找到答案
用户路径:
在使用iframe选择的视图中,我可以直接从我设置为默认图片的Google服务器创建图片网址。
目前,此URL可以是(JS):
var image = "https://geo3.ggpht.com/cbk?panoid=" + panoId + "&output=thumbnail&cb_client=search.LOCAL_UNIVERSAL.gps&thumb=2&w=689&h=487&yaw=" + povHeading + "&pitch=" + povPitch + "&thumbfov=" + fov;
或
var image = "https://lh5.googleusercontent.com/" + panoId + "/w689-h487-k-no-pi"+povPitch+"-ya"+povHeading+"-ro0-fo"+fov+"/";
这适用于绝大多数案例,但随着越来越多的人使用该服务,出现了一些特殊案例(示例链接):
我正在保存这两个案例的链接,但我还没有找到可以应用的一般规则。 进入他的公司的第三个示例链接的用户正在获得404 img not found atm。
以下是我目前正在使用的代码,如果它可以帮助理解问题(JS):
function generateImg() {
/* here I get all the vars used to create the image */
//generate img link
var image = "https://geo3.ggpht.com/cbk?panoid=" + panoId + "&output=thumbnail&cb_client=search.LOCAL_UNIVERSAL.gps&thumb=2&w=689&h=487&yaw=" + povHeading + "&pitch=" + povPitch + "&thumbfov=" + fov;
//if img does not exist
UrlExists(image, function(status){
if(status === 404){
// 404 not found
var image = "https://lh5.googleusercontent.com/" + panoId + "/w689-h487-k-no-pi"+povPitch+"-ya"+povHeading+"-ro0-fo"+fov+"/";
}
});
}
答案 0 :(得分:2)
您可以在官方API中获得一致的结果:
var image = "https://maps.googleapis.com/maps/api/streetview?size=400x400&pano=" + panoId + "&fov=90&heading=235&pitch=10&key=" + API_KEY;