Здравствуйте, возник вопрос. Что не так? Получил API ключ. Вставил. Но что то все равно не работает 404 ошибка. Вроде эта ошибка говорит о том что не может подключится к серверу. Но в чем проблема? может что то не дописал?

```1c
    Функция ОпределитьGPRSКоординаты(Знач Адрес) Экспорт //Массив

    Параметры = Новый Структура("Широта, Долгота, БылаОшибка", 0, 0, Истина);

    Если СокрЛП(Адрес) = " Тогда
    Возврат Параметры;
    КонецЕсли;

    Если Найти(Адрес, "Россия") = 0 Тогда
    Адрес = "Россия" + СокрЛП(Адрес);
    КонецЕсли;

    http = Новый COMОбъект("WinHttp.WinHttpRequest.5.1");

    Адрес = СокрЛП(Адрес);

    АдресСайта = "https://geocode-maps.yandex.ru/2.1/?apikey=******************&geocode="+Адрес;

    http.open("GET", АдресСайта, False);

    http.send();

    Текст = http.responseText;

    Поз = Найти(Текст,"<pos>");
    Поз1 = Найти(Текст,"</pos>");
    Стр = СокрЛП(Сред(Текст, Поз + 5, Поз1 - Поз - 5));

    Поз = Найти(Стр," ");
    Если Поз > 0 Тогда
    Параметры.Долгота = Лев(Стр,Поз - 1);
    Параметры.Широта = Сред(Стр,Поз + 1);
    Параметры.БылаОшибка = Ложь;
    КонецЕсли;

    Возврат Параметры;

    КонецФункции
```

Заранее спасибо!!!
---
Вот решение

```1c
    Функция ОпределитьGPRSКоординаты(Знач Адрес) Экспорт //Массив

    Параметры = Новый Структура("Широта, Долгота, БылаОшибка", 0, 0, Истина);

    Если СокрЛП(Адрес) = " Тогда
    Возврат Параметры;
    КонецЕсли;

    Соединение = Новый HTTPСоединение("geocode-maps.yandex.ru",443,,,,,Новый ЗащищенноеСоединениеOpenSSL());
    Запрос = Новый HTTPЗапрос("/1.x/?geocode="+СокрЛП(Адрес)+"&apikey=*********");
    Результат = Соединение.Получить(Запрос);
    Если Результат.КодСостояния = 200 Тогда
    А = Результат.ПолучитьТелоКакСтроку();
    Поз = Найти(А,"<pos>");
    Поз1 = Найти(А,"</pos>");
    Стр = СокрЛП(Сред(А, Поз + 5, Поз1 - Поз - 5));

    Поз = Найти(Стр," ");
    Если Поз > 0 Тогда
    Параметры.Долгота = Лев(Стр,Поз - 1);
    Параметры.Широта = Сред(Стр,Поз + 1);
    Параметры.БылаОшибка = Ложь;
    КонецЕсли;
    КонецЕсли;
    Возврат Параметры;
    КонецФункции
```
---
Адрес = "Россия" + СокрЛП(Адрес);
Ага, где адрес, домустим, Москва г., Советская ул, 5 д, 1 к.
И получим РоссияМосква г., Советская ул, 5 д, 1 к., как такое найти?
Это одна из причин. Просто ошибка 404 (хотя бы загулили, честное слово) - это адрес не найден.
---
сейчас попробую
---
Он даже просто "Москва" не находит. И да. lang, я добавил
---
(12)
Соединение = Новый HTTPСоединение("geocode-maps.yandex.ru",443,,,,,Новый ЗащищенноеСоединениеOpenSSL());
 Запрос = Новый HTTPЗапрос("/1.x/?geocode="+СокрЛП(АдресМестонахождения)+"&apikey=****");
 Результат = Соединение.Получить(Запрос);
 Если Результат.КодСостояния = 200 Тогда
КонецЕсли;
---
это для первой версии же
---
Соединение = Новый HTTPСоединение("geocode-maps.yandex.ru",443,,,,,Новый ЗащищенноеСоединениеOpenSSL());
Запрос = Новый HTTPЗапрос("/1.x/?geocode="+СокрЛП(АдресМестонахождения)+"&apikey=****");
Результат = Соединение.Получить(Запрос);
Если Результат.КодСостояния = 200 Тогда
КонецЕсли;

Он выдал 200. это типа ок. Но там нет данных.
---
это типа ок. На нет и суда нет, значит не нашёл. Точку останова поставьте и получите для себя значение "geocode-maps.yandex.ru"+"/1.x/?geocode="+СокрЛП(АдресМестонахождения) и откройте его в браузере, увидите результат.
А так, видимо надо было дополнить, - Результат.ПолучитьТелоКакСтроку() - вернёт вам xml ответа.
---
Получилось!!!)))

Спасибо всем!))
---
что было не так? на какой версии взлетело?
---
https://tech.yandex.ru/maps/geocoder/doc/desc/concepts/input_params-docpage/
первая строка формата запроса, откуда ТС взял "geocode-maps.yandex.ru/2.1" непонятно. Возможно спутал с "api-maps.yandex.ru/2.1"
---
вот и меня смутило, версия и параметр геокод, который напрочь отсутствует в версии 2.х
---
Да, вы правы) еще раз спасибо)
---
версия 1.X
---
Убрал Россия. Написал просто "Москва" и он выдает все туже ошибку. 404
---
покажите к какому виду строки сейчас пришли?
---
https://geocode-maps.yandex.ru/2.x/?apikey=******⟨=ru_RU&geocode=Москва
---
<sc ript src="https://api-maps.yandex.ru/2.1/?lang=ru_RU&apikey=<ваш API-ключ>" type="text/javascript"></sc ript> товарищи из яндекса вот такой формат толкают. сначала ланг, потом апикей, потом все остальное
---
?lang=ru_R
Как не верти. Результат тот же. Даже Москву не находит.
---
Здравствуйте, по какой документации осуществляете подключение? разве есть уже 2.1? на версии 1.х работает?
---
Нет, на версии 1.X уже не работает;
Выдает вот такую ошибку: version="1.0" encoding="UTF-8"?><ymaps xmlns="http://maps.yandex.ru/ymaps/1.x" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/gml http://schemas.opengis.net/gml/3.1.1/base/gml.xsd http://maps.yandex.ru/ymaps/1.x https://maps.yandex.ru/schemas/ymaps/1.x/ymaps.xsd http://maps.yandex.ru/geocoder/1.x http://maps.yandex.ru/schemas/geocoder/1.x/geocoder.xsd http://maps.yandex.ru/address/1.x http://maps.yandex.ru/schemas/search/1.x/address.xsd urn:oasis:names:tc:ciq:xsdschema:xAL:2.0 http://docs.oasis-open.org/election/external/xAL.xsd"><GeoObjectCollection><met aDataProperty xmlns="http://www.opengis.net/gml"><GeocoderResponseMetaData xmlns="http://maps.yandex.ru/geocoder/1.x"><request>Р Р‘ Р“РѕСЂРѕРґ РњРёРЅСЃРє СѓР» РџСЂРёС‚С‹РєРѕРіРѕ 64</request><found>0</found><results>10</results></GeocoderR­esponseMetaData></metaDataProperty></GeoObjectCollection></y­maps>
---
https://tech.yandex.ru/maps/jsapi/doc/2.1/dg/concepts/load-docpage/
Вот тут брал источник
---
А переменную адрес как передаете? в каком формате запись
---
Строковый
---
не приводите ее к виду "Город+улица+номер дома"? По документации этот момент не смотрел, но либо вот так ее переформатировать, либо использовать иной параметры. вполне возможно "яндексСёрч=Адрес"
---
ланг попробовали добавить?
---
?apikey=ваш API-ключ⟨=ru_RU" вот такая строка должна быть. параметр lang отмечен как обязательный в документации
---
а где этот параметр geocode в документации?
---
геокод в 2.1 нет такого параметра
---
Вот решение

```1c
    Функция ОпределитьGPRSКоординаты(Знач Адрес) Экспорт //Массив

    Параметры = Новый Структура("Широта, Долгота, БылаОшибка", 0, 0, Истина);

    Если СокрЛП(Адрес) = " Тогда
    Возврат Параметры;
    КонецЕсли;

    Соединение = Новый HTTPСоединение("geocode-maps.yandex.ru",443,,,,,Новый ЗащищенноеСоединениеOpenSSL());
    Запрос = Новый HTTPЗапрос("/1.x/?geocode="+СокрЛП(Адрес)+"&apikey=*********");
    Результат = Соединение.Получить(Запрос);
    Если Результат.КодСостояния = 200 Тогда
    А = Результат.ПолучитьТелоКакСтроку();
    Поз = Найти(А,"<pos>");
    Поз1 = Найти(А,"</pos>");
    Стр = СокрЛП(Сред(А, Поз + 5, Поз1 - Поз - 5));

    Поз = Найти(Стр," ");
    Если Поз > 0 Тогда
    Параметры.Долгота = Лев(Стр,Поз - 1);
    Параметры.Широта = Сред(Стр,Поз + 1);
    Параметры.БылаОшибка = Ложь;
    КонецЕсли;
    КонецЕсли;
    Возврат Параметры;
    КонецФункции
```
---
Наверное, и через десять лет еще будут выскакивать на форумах попытки выполнять запросы через WinHttpRequest . Хз, как это объяснить.