Уважаемые, пытаюсь законектиться к CRM envycrm
У них в описании API сказано
Для получения полного списка клиентов необходимо вызвать метод:
POST https://envycrm.com/crm/api/v1/client/list/?api_key=ваш_ключ_апи В качестве параметров запроса необходимо передать в тело запроса JSON массив параметров для поиска, вида:
{"request":{"keyword": "", "limit": 0, "offset": 0, "date_start": "2017-07-10", "date_end": "2017-07-10"}}
Пишу
Процедура КнопкаВыполнитьНажатие(Кнопка)
Соединение = Новый HTTPСоединение("********.envycrm.com", ,"*******@mail.ru", "********",,,Новый ЗащищенноеСоединениеOpenSSL,Истина);
Запрос = Новый HTTPЗапрос("https://envycrm.com/crm/api/v1/client/list/?api_key=**********************************");
ПараметрыЗапроса = Новый Структура;
ПараметрыЗапроса.Вставить("keyword","");
ПараметрыЗапроса.Вставить("limit",100);
ПараметрыЗапроса.Вставить("offset",0);
ПараметрыЗапроса.Вставить("date_start","2018-01-01");
ПараметрыЗапроса.Вставить("date_end","2019-01-01");
Стр = ЗначениеВJSON(ПараметрыЗапроса);
Запрос.УстановитьТелоИзСтроки(Стр,КодировкаТекста.UTF8,ИспользованиеByteOrderMark.НеИспользовать);
ИмяФайлаОтвета = ПолучитьИмяВременногоФайла("txt");
Результат = Соединение.ОтправитьДляОбработки(Запрос, ИмяФайлаОтвета);
Текст = Новый ЧтениеТекста(ИмяФайлаОтвета, КодировкаТекста.UTF8);
Ответ = Текст.Прочитать();
Сообщить("Вернули код " + Результат.КодСостояния);
Сообщить("Результат: " + Ответ);
КонецПроцедуры
Функция ЗначениеВJSON(Данные, ПараметрыЗаписи = Неопределено)
ЗаписьJSON = Новый ЗаписьJSON;
ЗаписьJSON.ПроверятьСтруктуру = Истина;
ЗаписьJSON.УстановитьСтроку(ПараметрыЗаписи);
ЗаписатьJSON(ЗаписьJSON, Данные);
Результат = ЗаписьJSON.Закрыть();
Возврат Результат;
КонецФункции
Показать
Там, где звездочки - логин, пароль клиента и ключ api, конечно. Всё правильно, авторизация проходит.
В ответ получаю код 200 (выполнено) и ... html-страницу их сайта. Всё. Поддержка мычит что-то невразумительное
Я что-то делаю не так ? Похоже собственно до JSON достучаться не удается, параметры и ссылка игнорируются и я просто получаю get-запросом (хотя делаю post) заглавную страницу сайта
Что делать и кто виноват ?
как вариант можно при создании запроса указать заголовки
ЗаголовокHTTP = Новый Соответствие();
ЗаголовокHTTP.Вставить("Content-Type", "application/x-www-form-urlencoded");
ЗаголовокHTTP.Вставить("Accept-Charset", "utf-8");
ЗаголовокHTTP.Вставить("Content-Charset", "utf-8");
..
HTTPЗапрос = Новый HTTPЗапрос(Ресурс,ЗаголовокHTTP);