Имя: Пароль:
1C
1С v8
Непонятный трабл при соединении
0 picom
 
23.11.23
11:15
Код на 8.2.23    

        АдресСервера = "otpravka-api.pochta.ru";
    УрлСервиса = "/1.0/tariff";
    

    ТокенАвторизации = "AccessToken 123"; //    https://otpravka.pochta.ru/specification#/authorization-token
    КлючАвторизации = "Basic 123";        // https://otpravka.pochta.ru/specification#/authorization-key
    
    Заголовки = Новый Соответствие;
    Заголовки.Вставить("Authorization", "AccessToken "+ТокенАвторизации);
    Заголовки.Вставить("X-User-Authorization", "Basic "+КлючАвторизации);
    Заголовки.Вставить("Content-Type", "application/json;charset=UTF-8");
    
    Попытка
        Соединение = Новый HTTPСоединение(АдресСервера,443,,,,,
            Новый ЗащищенноеСоединениеOpenSSL(неопределено, неопределено)
        );
    Исключение
        Возврат ("error");
    КонецПопытки;
    
    HTTPЗапрос =  Новый HTTPЗапрос(УрлСервиса, Заголовки);
    
    Параметры = Новый Соответствие;
    Параметры.Вставить("declared-value", 0); //объявленная стоимость
    Параметры.Вставить("index-from", Откуда);
    Параметры.Вставить("index-to", Куда);
    Параметры.Вставить("mail-category", "ORDINARY");
    Параметры.Вставить("mail-type", "POSTAL_PARCEL");
    Параметры.Вставить("mass", Вес);
    
    ЗаписьJSON = Новый ЗаписьJSON;
    ЗаписьJSON.УстановитьСтроку();
    ЗаписатьJSON(ЗаписьJSON, Параметры);
    Строчка = ЗаписьJSON.Закрыть();
    HTTPЗапрос.УстановитьТелоИзСтроки(Строчка, "UTF-8");
    Результат =  Соединение.ОтправитьДляОбработки (HTTPЗапрос);


И получаю ошибку
Ошибка работы с Интернет:  Transferred a partial file

Если убрать защищенное, то проходит, но возврат от API что надо использовать HTTPS ...

Хэлп!
1 Волшебник
 
23.11.23
11:17
Гляньте тут, есть несколько решений
https://forum.infostart.ru/forum8/topic149908/
2 picom
 
23.11.23
11:19
(1) Это все проверено, кстати, ссылка не подменилась на аффилиатную ...
3 Garykom
 
23.11.23
11:20
HTTPЗапрос.УстановитьТелоИзСтроки(Строчка, "UTF-8");

BOM?
4 Garykom
 
23.11.23
11:21
попробуй для начала
HTTPЗапрос.УстановитьТелоИзСтроки(Строчка, "UTF-8", Ложь);
5 Волшебник
 
23.11.23
11:24
(2) >> кстати, ссылка не подменилась на аффилиатную...
Всё в порядке.
6 picom
 
23.11.23
11:29
(3)
HTTPЗапрос.УстановитьТелоИзСтроки(Строчка, "UTF-8", ИспользованиеByteOrderMark.НеИспользовать);

Не отразилось на провальном результате
7 PLUT
 
23.11.23
11:57
(6) а вот эту шляпу пробовали?

https://otpravka.pochta.ru/specification#/usecases-chrome-backlog

если через хром работает - смотрите отличия через какой-нибудь сниффер
8 picom
 
24.11.23
07:28
up
(7) This item can only run on ChromeOS