1

Внезапно я, кажется, получаю неточные коды статуса из API Javascript Google Maps. Например, с помощью этого кода:Сообщение StreetViewService getPanorama с неправильными кодами состояния для LatLng paris

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); 
}); 

С этим, я получаю следующий результат:

new getPano() location = (35.685175, 139.75279950000004) 
getPano() panoID = F:-2eRkGOODHZg/VtKZ7EGeepI/AAAAAAAADLY/Fvhw3HeTfXcAVq0wuHxq22LnoTtpeUx2A 
getPano() status = OK 

Когда я пытаюсь построить запрос URL на основе этих данных, таких как:

https://maps.googleapis.com/maps/api/streetview?size=640x540&location=35.685175,139.75279950000004 

или с панорамной ID:

https://maps.googleapis.com/maps/api/streetview?size=640x540&pano=F:-2eRkGOODHZg/VtKZ7EGeepI/AAAAAAAADLY/Fvhw3HeTfXcAVq0wuHxq22LnoTtpeUx2A 

Я получаю «Извините, у нас нет изображений здесь». образ. Другими словами, хотя статус вернулся как OK, в этом месте нет панорамы. Если вы просматриваете Карты Google вручную, то это latLng. У Google есть спутниковые снимки для этого местоположения, но не панель панорамы улиц.

Этот код работал, поэтому я смущен относительно того, что происходит. Почему API возвращает статус панорамы OK для этого местоположения, когда panoID и latLng указывают на отсутствие изображения?

ОБНОВЛЕНИЕ: Я был бы признателен за любые подтверждения того, что мои выводы одинаковы для других (например, это не то, что я делаю неправильно), и любые идеи для обходных решений. Мое приложение - это приложение, которое вытаскивает статические изображения уличного изображения для мест latLng, но если нет изображения улиц, я перехожу на спутник. Я использую статус getPanorama(), чтобы определить, в каком направлении двигаться.

+0

Это не выглядит как действительный идентификатор панорамы: 'F: -2eRkGOODHZg/VtKZ7EGeepI/AAAAAAAADLY/Fvhw3HeTfXcAVq0wuHxq22LnoTtpeUx2A' – geocodezip

+0

это панорам ID АНИ дает мне для этого LatLng. есть ли альтернативный метод проверки/проверки идентификатора? – mix

+0

Правильное место: [скрипка] (http://jsfiddle.net/b4pzs6dn/)? Если да, укажите URL-адрес URL-адреса? – geocodezip

ответ

1

С нескольких дней назад google.maps.StreetViewService.getPanorama() действительно возвращает панорамы, которые невозможно отобразить в JavaScript API.

Это вопрос в API, пожалуйста, начните его отслеживание ошибок, чтобы получить обновление:

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

1

Нового Street View Image Metadata API позволит вам запрос на наличие Street View панорам в заданных местах , и он будет возвращать только панорамы, которые фактически доступны в API-интерфейсе Street View Image. Это избавит вас от Issue 10335.

Местоположения могут быть указаны по адресу или latlng. Если панорама обнаружена, в ответ будет включен идентификатор панорамы, который будет использоваться в запросе API-интерфейса Street View. Эти запросы метаданных бесплатны.

0

Существует отдельный запрос особенности в трекере публичного выпуска, чтобы обеспечить доступ к панорамам с панорамной ID, как F:-2eRkGOODHZg/VtKZ7EGeepI/AAAAAAAADLY/Fvhw3HeTfXcAVq0wuHxq22LnoTtpeUx2A в Street View Image API:

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

Если вы заинтересованы в этой возможности чтобы добавить свой голос.

UPDATE

запрос особенность, что я уже говорил ранее, сейчас помечен как фиксированный.

Google реализовал доступ к пользовательскому контенту с помощью API-интерфейса Street View Image. Однако во время этого процесса был изменен формат идентификатора панорамы.

Например, вы упомянули пано ID F:-2eRkGOODHZg/VtKZ7EGeepI/AAAAAAAADLY/Fvhw3HeTfXcAVq0wuHxq22LnoTtpeUx2A.

Теперь новый идентификатор панорамы для этой панорамы является CAMSRi0yZVJrR09PREhaZy9WdEtaN0VHZWVwSS9BQUFBQUFBQURMWS9Gdmh3M0hlVGZYY0FWcTB3dUh4cTIyTG5vVHRwZVV4MkE.

Вы можете легко конвертировать предыдущие панорам идентификаторов новых с использованием Street View запросов Image Metadata, которые бесплатно и не потребляющие квоты:

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

{ 
    "copyright":"© Alberto Saito","date":"2016-02", 
    "location":{ 
     "lat":35.685175, 
     "lng":139.7527995 
    },"pano_id":"CAMSRi0yZVJrR09PREhaZy9WdEtaN0VHZWVwSS9BQUFBQUFBQURMWS9Gdmh3M0hlVGZYY0FWcTB3dUh4cTIyTG5vVHRwZVV4MkE.", 
    "status":"OK" 
} 

Теперь примените новый собой.Удалить ID и наслаждайтесь:

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

 Смежные вопросы

  • Нет связанных вопросов^_^