Вход | Регистрация


Проблема с post и get запросами к ФССП

Проблема с post и get запросами к ФССП
Я
   s7cret
 
24.02.18 - 22:01
Добрый день. Если кто работал с post и get запросами к серверу подскажет что я не так делаю.

В общем ресурс это ФССП, точнее их API  для работы с их базой.



Пытаюсь послать запрос на сервер  Ключ - ZHtMJ2L0GOE3,  параметры задал, ответ в любом случае "403",  ошибка доступа.

Пример из документации тоже не меняет ситуации https://api-ip.fssprus.ru/swagger

Заранее благодарен.




СтрокаПараметров = " { \""token\"": \""ZHtMJ2L0GOE3\"", \""request\"": [ { \""type\"": 1, \""params\"": { \""firstname\"": \""КИРИЛЛ\"", \""lastname\"": \""МИТРОФАНОВ\"", \""secondname\"": \""\"", \""region\"": \""0\"", \""birthdate\"": \""\"" } }}";

Сервер = "api-ip.fssprus.ru";      Ресурс = "/api/v1.0/search/group";

HTTPЗапрос = Новый HTTPЗапрос;

HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаПараметров);

HTTPЗапрос.АдресРесурса = Ресурс;

 

 

ssl = Новый ЗащищенноеСоединениеOpenSSL;

HTTP = Новый HTTPСоединение(Сервер,,,,,,ssl);   

 

ИмяВыходногоФайла = ПолучитьИмяВременногоФайла();
HTTPЗапрос.Заголовки.Вставить("accept", "application/json");

HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/json");

 

ОтветHTTP = HTTP.ОтправитьДляОбработки(HTTPЗапрос,ИмяВыходногоФайла);
 
 
   s7cret
 
1 - 24.02.18 - 22:04
Пример get для одного лица, ошибка то же 403
    
    СтрокаПараметров = "?token=ZHtMJ2L0GOE31&region=0&firstname=%D0%9A%D0%98%D0%A0%D0%98%D0%9B%D0%9B&secondname=%D0%98%D0%93%D0%9E%D0%A0%D0%95%D0%92%D0%98%D0%A7&lastname=%D0%9C%D0%98%D0%A2%D0%A0%D0%9E%D0%A4%D0%90%D0%9D%D0%9E%D0%92&birthdate=08.04.1981";
    Сервер = "api-ip.fssprus.ru";
    Ресурс = "/api/v1.0/search/physical";
    
    HTTPЗапрос = Новый HTTPЗапрос; 
    HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаПараметров); 
    HTTPЗапрос.АдресРесурса = Ресурс; 
    
    ssl = Новый ЗащищенноеСоединениеOpenSSL;
    HTTP = Новый HTTPСоединение(Сервер,,,,,,ssl);   

    ОтветHTTP = HTTP.Получить(HTTPЗапрос);
   s7cret
 
2 - 24.02.18 - 22:07
а так срабатывает,  но это через com 



WinHttp = Новый COMОбъект("WinHttp.WinHttpRequest.5.1");
WinHttp.Option(2,"utf-8");
WinHttp.Open("GET", "https://api-ip.fssprus.ru/api/v1.0/search/physical?token=ZHtMJ2L0GOE31®ion=0&firstname=КИРИЛЛ&secondname=ИГОРЕВИЧ&lastname=МИТРОФАНОВ&birthdate=08.04.1981";);
WinHttp.Send();
РезультатСтр = WinHttp.ResponseText();
   Джексон
 
3 - 24.02.18 - 22:37
1) убери косые палки
2) зачем ты пхаешь что-то в тело запроса, если делаешь гет?
   s7cret
 
4 - 24.02.18 - 23:44
(3)
Первое исправил, но ошибка осталась 403

по второму пробовал по разному и так и так, вот через get без тела запроса.
    АдресСервиса = "api-ip.fssprus.ru";
    АдресРесурса = "/api/v1.0/search/physical";
    СтрокаПараметров = "?token=ZHtMJ2L0GOE3&region=0&firstname=%D0%9A%D0%98%D0%A0%D0%98%D0%9B%D0%9B&secondname=%D0%98%D0%93%D0%9E%D0%A0%D0%95%D0%92%D0%98%D0%A7&lastname=%D0%9C%D0%98%D0%A2%D0%A0%D0%9E%D0%A4%D0%90%D0%9D%D0%9E%D0%92&birthdate=08.04.1981";
    
    HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса + СтрокаПараметров);    
    HTTPСоединение = Новый HTTPСоединение(АдресСервиса, 443, , , , ,Новый ЗащищенноеСоединениеOpenSSL);
    Ответ = HTTPСоединение.Получить(HTTPЗапрос);
   Fram
 
5 - 24.02.18 - 23:47
В чем смысл объекта ssl, если никакие параметры его не указываешь?
   s7cret
 
6 - 25.02.18 - 00:01
(5) Смысл в том что таким образом задаем HTTPS подключение,  в большинстве случаев что успел посмотреть его таким
образом и определяют.
Пробовал и так 

ssl1 = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows(СпособВыбораСертификатаWindows.Авто),Новый СертификатыУдостоверяющихЦентровWindows());    


но результат тот же.
   Fram
 
7 - 25.02.18 - 01:00
(6) Действительно..
Можно, конечно, заморочиться и отловить с помощью wireshark в чем разница (2) и (4), но, думаю, оно того не стоит. Просто используй (2)
   s7cret
 
8 - 25.02.18 - 01:18
(7) а при больших объемах нагрузка через com как понимаю больше?
   s7cret
 
9 - 25.02.18 - 14:16
?

Список тем форума
Рекламное место пустует  Рекламное место пустует
Программист всегда исправляет последнюю ошибку.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует