首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为LatLng paris报告错误状态代码的StreetViewService getPanorama方法

为LatLng paris报告错误状态代码的StreetViewService getPanorama方法
EN

Stack Overflow用户
提问于 2016-08-19 15:33:04
回答 3查看 1.5K关注 0票数 1

突然之间,我似乎从Google Maps Javascript API得到了不准确的状态代码。例如,使用以下代码:

代码语言:javascript
复制
sv.getPanorama({
    location: {lat: 35.685, lng: 139.7514}, 
    radius: 350
  }, function(data, status) {
    console.log("getPano() location = "+data.location.latLng);
    console.log("getPano() panoID = "+data.location.pano);
    console.log("getPano() status = "+status);
});

这样,我得到了以下输出:

代码语言:javascript
复制
new getPano() location = (35.685175, 139.75279950000004)
getPano() panoID = F:-2eRkGOODHZg/VtKZ7EGeepI/AAAAAAAADLY/Fvhw3HeTfXcAVq0wuHxq22LnoTtpeUx2A
getPano() status = OK

当我尝试基于这些数据构建请求URL时,例如:

代码语言:javascript
复制
https://maps.googleapis.com/maps/api/streetview?size=640x540&location=35.685175,139.75279950000004

或者使用pano ID:

代码语言:javascript
复制
https://maps.googleapis.com/maps/api/streetview?size=640x540&pano=F:-2eRkGOODHZg/VtKZ7EGeepI/AAAAAAAADLY/Fvhw3HeTfXcAVq0wuHxq22LnoTtpeUx2A

我得到的是“对不起,我们这里没有图像。”图像。换句话说,即使状态返回为OK,在此位置也没有可用的pano。手动访问谷歌地图以获取此latLng证明了这一点。谷歌确实有该地点的卫星图像,但没有街景全景图。

这段代码过去是可以工作的,所以我搞不清到底是怎么回事。当panoID和latLng指向无图像时,为什么接口返回此位置的OK全景状态?

更新:如果能确认我的发现对其他人也是一样的(例如,这不是我做错的事情),以及任何解决办法的想法,我将不胜感激。我的应用程序可以拉出latLng位置的静态街景图片,但如果没有可用的街景图片,我会转到卫星上。我使用getPanorama()状态来确定采用哪个方向。

EN

回答 3

Stack Overflow用户

发布于 2016-08-29 14:23:48

因为几天前,google.maps.StreetViewService.getPanorama()确实返回了不能在JavaScript应用程序接口中显示的panos。

这是API中的一个问题,请在问题跟踪器上启动它以获取更新:

Issue 10335: Bug: StreetViewService getPanorama() reporting incorrect status for many latLng pairs

票数 1
EN

Stack Overflow用户

发布于 2016-11-25 19:19:04

新的Street View Image Metadata应用编程接口将允许您查询给定位置的街景全景图的可用性,并且它将只返回街景图像应用编程接口中实际可用的全景图。这会让你摆脱Issue 10335

位置可以通过地址或latlng来指定。如果找到全景图,则响应将包括全景ID,以在Street View Image API请求中使用。这些元数据查询是免费的。

票数 1
EN

Stack Overflow用户

发布于 2017-04-15 21:58:00

在公共问题跟踪器中有一个单独的功能请求,以允许访问街景图像应用编程接口中具有pano ID的全景图,如F:-2eRkGOODHZg/VtKZ7EGeepI/AAAAAAAADLY/Fvhw3HeTfXcAVq0wuHxq22LnoTtpeUx2A

https://issuetracker.google.com/issues/35829459

如果您对此功能感兴趣,请启动功能请求以添加您的投票。

更新

我之前提到的功能请求现在被标记为Fixed。

Google通过街景图像API实现了对用户生成内容的访问。但是,在此过程中,pano ID格式已更改。

例如,您提到了pano ID F:-2eRkGOODHZg/VtKZ7EGeepI/AAAAAAAADLY/Fvhw3HeTfXcAVq0wuHxq22LnoTtpeUx2A

现在,此全景图的新全景ID为CAMSRi0yZVJrR09PREhaZy9WdEtaN0VHZWVwSS9BQUFBQUFBQURMWS9Gdmh3M0hlVGZYY0FWcTB3dUh4cTIyTG5vVHRwZVV4MkE.

您可以使用街景图像元数据请求轻松地将以前的pano ID转换为新的,这些请求是免费的,并且不会消耗您的配额:

https://maps.googleapis.com/maps/api/streetview/metadata?pano=F%3A-2eRkGOODHZg%2FVtKZ7EGeepI%2FAAAAAAAADLY%2FFvhw3HeTfXcAVq0wuHxq22LnoTtpeUx2A&key=YOUR_API_KEY

代码语言:javascript
复制
{
    "copyright":"© Alberto Saito","date":"2016-02",
    "location":{
        "lat":35.685175,
        "lng":139.7527995
    },"pano_id":"CAMSRi0yZVJrR09PREhaZy9WdEtaN0VHZWVwSS9BQUFBQUFBQURMWS9Gdmh3M0hlVGZYY0FWcTB3dUh4cTIyTG5vVHRwZVV4MkE.",
    "status":"OK"
}

现在应用新的pano ID并享受:

https://maps.googleapis.com/maps/api/streetview?pano=CAMSRi0yZVJrR09PREhaZy9WdEtaN0VHZWVwSS9BQUFBQUFBQURMWS9Gdmh3M0hlVGZYY0FWcTB3dUh4cTIyTG5vVHRwZVV4MkE.&size=600x400&key=YOUR_API_KEY

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39033481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档