Вы отправляете только почтовый индекс с префиксом M5?В этом случае запрос является слишком неоднозначным, и служба геокодирования плохо работает с неоднозначными запросами.Если вы укажете что-то более точное, оно будет работать (например, M5 4GP, Великобритания)
https://maps.googleapis.com/maps/api/geocode/json?address=M5%204GP%2C%20UK&key=YOUR_API_KEY
Также обратите внимание, что я добавил Великобританию в текст поиска, чтобы сместить результаты в сторону Великобритании.
В вашем случае, когда у вас есть только префикс почтового индекса M5, я бы предложил использовать запрос автозаполнения в качестве обходного пути.Он вернет несколько предложений, и вы можете отфильтровать предложения, имеющие тип «postal_code_prefix» или «postal_code».Например, запрос «M5, UK»
https://maps.googleapis.com/maps/api/place/autocomplete/json?input=M5%2C%20UK&key=YOUR_API_KEY
возвращает 5 предложений, одно из которых имеет тип «postal_code_prefix»
{
"description":"Salford M5, UK",
"id":"6cea0bf4efcd39449020500f97a2352cdfd13457",
"matched_substrings":[
{
"length":2,
"offset":8
},
{
"length":2,
"offset":12
}
],
"place_id":"ChIJEVdF_g2ue0gRXkpo4zmLlQM",
"reference":"ChIJEVdF_g2ue0gRXkpo4zmLlQM",
"structured_formatting":{
"main_text":"M5",
"main_text_matched_substrings":[
{
"length":2,
"offset":0
}
],
"secondary_text":"Salford, UK",
"secondary_text_matched_substrings":[
{
"length":2,
"offset":9
}
]
},
"terms":[
{
"offset":0,
"value":"Salford"
},
{
"offset":8,
"value":"M5"
},
{
"offset":12,
"value":"UK"
}
],
"types":[
"postal_code_prefix","postal_code","geocode"
]
},
После фильтрацииэтот результат и получил идентификатор места ChIJEVdF_g2ue0gRXkpo4zmLlQM
, вы можете повернуть его геокодированием, чтобы получить координаты
https://maps.googleapis.com/maps/api/geocode/json?place_id=ChIJEVdF_g2ue0gRXkpo4zmLlQM&key=YOUR_API_KEY
Посмотрите на этот результат в инструменте геокодера:
https://google -developers.appspot.com / карты / документация / utils / geocoder / # place_id% 3DChIJEVdF_g2ue0gRXkpo4zmLlQM
Надеюсь, это поможет!