Имя: Пароль:
1C
 
пост запрос . параметры
0 lamme
 
15.04.20
09:54
добрый день
есть описание

нужно выполнить POST-запрос к адресу https://хххххххххх/deals/api/sync/deal/update/ с параметрами:
•userId - id кабинета продавца;
•auth - должен вычисляться как hash('sha512', X), где X - ключ продавца, предоставляем по вашему запросу;
•dealId - id сделки;



делаю так:


HTTPСоединение =  Новый HTTPСоединение("ххххх",,,,,,Новый ЗащищенноеСоединениеOpenSSL);

    HTTPЗаголовки = Новый Соответствие;


        Адрес = "deals/api/sync/deal/update?auth="+auth_ХЭШI512+"&userId="+userId+"&dealId="+Сокрлп(Формат(НомерЗаказаНаСайта,"ЧГ="));
    
    
    HTTPЗапрос = Новый HTTPЗапрос(Адрес, HTTPЗаголовки);

    Ответ = HTTPСоединение.ВызватьHTTPМетод("POST", HTTPЗапрос);



в ответ - 401.
спрашиваю у сайта - чего за х - ответ:
Если вы отправляете методом POST, то в uri запроса не должно быть GET-параметров. Все передаваемые параметры должны быть переданы в теле POST запроса, а не в uri через &


Вопрос.
как правильно сделать?
как в пост запросе параметры передать в теле?
1 ДенисЧ
 
15.04.20
09:57
УстановитьТелоИзСтроки()
ОтправитьДляОбработки()
2 fisher
 
15.04.20
09:57
3 lamme
 
15.04.20
09:59
(1)
а можно приемр?
я так делал - не взлетело
4 ДенисЧ
 
15.04.20
10:02
(3) Как так? Покажим
5 lamme
 
15.04.20
10:03
//////  
//////   Запрос = Новый HTTPЗапрос("/deals/api/sync/deal/update", Заголовки);
//////   Запрос.УстановитьТелоИзСтроки("auth="+auth_ХЭШI512);
//////      Ответ = HTTPСоединение.ОтправитьДляОбработки(Запрос);
6 lamme
 
15.04.20
10:03
Запрос = Новый HTTPЗапрос("/deals/api/sync/deal/update", Заголовки);
    Запрос.УстановитьТелоИзСтроки("auth="+auth_ХЭШI512);
       Ответ = HTTPСоединение.ОтправитьДляОбработки(Запрос);
7 lamme
 
15.04.20
10:18
работает.
там строку с параметрами надо было полностью сделать
те
Запрос.УстановитьТелоИзСтроки("auth="+auth_ХЭШI512+"&userId="+userId+"&dealId="+Сокрлп(Формат(НомерЗаказаНаСайта,"ЧГ=")));
AdBlock убивает бесплатный контент. 1Сергей