Имя: Пароль:
1C
1С v8
1с Post запрос curl
0 1cJun
 
22.08.22
15:36
Всем привет, необходимо отправить curl Post-запрос видом curl -X POST "Адрес.ру/ресурс" -H "accept: text/plain" -H "Content-Type: multipart/form-data" -F "UserName=ЛОГИН" -F "Password=ПАРОЛЬ", в целом почитал про curl в целом и понял, что -H это заголовок, а -F это форма, вопрос: как в 1с отправить параметры -F? Пробовал так, но не работает
<code>

Соединение = Новый HTTPСоединение("Адрес.ру",443,,,,,Новый ЗащищенноеСоединениеOpenSSL);



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

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

Тело = "grant_type=password&username=" + ЭтотОбъект.Логин + "&password=" + ЭтотОбъект.Пароль;

Запрос.Заголовки.Вставить("accept", "text/plain");

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

Запрос.УстановитьТелоИзСтроки(Тело,"UTF-8",ИспользованиеByteOrderMark. НеИспользовать);

Ответ = Соединение.ОтправитьДляОбработки(Запрос);

Тело = Ответ.ПолучитьТелоКакСтроку();


</code>
1 arsik
 
гуру
22.08.22
15:39
Поставь себе fiddler и через него curl сделай. Увидишь что и куда нужно подставить.
Потом пытайся то же самое сделать из 1С.
2 Kassern
 
22.08.22
15:53
(0) -F это отправить данные в виде формы. Логин и пароль можно попробовать передать в HTTPСоединении
3 СеменовСемен
 
22.08.22
15:54
(0) ну ты правильно определил тело. где то в другом месте косяк
4 СеменовСемен
 
22.08.22
15:56
5 СеменовСемен
 
22.08.22
15:58
то что ты написал это
application/x-www-form-urlencoded
6 1cJun
 
22.08.22
16:00
(5) а если оставить multipart/form-data то как должно быть?
7 Kassern
 
22.08.22
16:03
Проще всего, как написали в (1) разобраться, можно тот же постман использовать для этого
8 1cJun
 
22.08.22
16:05
(7) я запустил в postman, вижу все заголовки и тело, вроде всё делаю так в 1с, но получаю 405 ошибку....
9 Kassern
 
22.08.22
16:05
Как-то так выглядит ваша команда:


{
    "url": "http://Адрес.ру/ресурс",
    "raw_url": "http://Адрес.ру/ресурс",
    "method": "post",
    "headers": {
        "accept": "text/plain",
        "Content-Type": "multipart/form-data"
    },
    "data": {
        "UserName": "ЛОГИН",
        "Password": "ПАРОЛ"
    }
}
10 Kassern
 
22.08.22
16:05
Конвертер curl https://curlconverter.com/json
11 СеменовСемен
 
22.08.22
16:08
(6) что-то типа такого
-----------------------------9051914041544843365972754266
Content-Disposition: form-data; name="text"

text default
-----------------------------9051914041544843365972754266
Content-Disposition: form-data; name="file1"; filename="a.txt"
Content-Type: text/plain

Content of a.txt.

-----------------------------9051914041544843365972754266
Content-Disposition: form-data; name="file2"; filename="a.html"
Content-Type: text/html

<!DOCTYPE html><title>Content of a.html.</title>

-----------------------------9051914041544843365972754266--
12 Fragster
 
гуру
22.08.22
16:24
не делай голову, используй https://github.com/vbondarevsky/Connector