|
Post запрос
| ☑ |
0
vaneSySs
20.11.18
✎
13:40
|
Всем привет!
Помогите разобраться с post запросом.
Вроде простенький код
Соединение = Новый HTTPСоединение("api.kadnet.ru");
ЗаголовокHTTP = Новый Соответствие();
ЗаголовокHTTP.Вставить("Content-Type", "application/x-www-form-urlencoded");
Запрос = Новый HTTPЗапрос("/v2/Requests/CheckNumbers?Api-Key=f04b7bf1-320d-43f7-b906-9d7a71998c38",ЗаголовокHTTP);
Запрос.УстановитьТелоИзСтроки("Query=66%3A06%3A4501018%3A305%3B66%3A06%3A4501018%3A2131&Comment=%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D1%8B%D0%B9%20%D0%BF%D1%80%D0%BE%D0%B3%D0%BE%D0%BD");
Ответ = Соединение.ОтправитьДляОбработки(Запрос);
ОтветВВидеСтроки = Ответ.ПолучитьТелоКакСтроку("UTF-8");
Но в ответ всегда возвращается 401. Что я делаю не так?)
|
|
1
Numerus Mikhail
20.11.18
✎
13:42
|
Код ответа на статус ошибки HTTP 401 Unauthorized клиента указывает, что запрос не был применен, поскольку ему не хватает действительных учетных данных для целевого ресурса.
Попробуй отправить этот запрос через какой-нибудь анализатор трафика и посмотри, какие заголовки/параметры передаются.
|
|
2
Lexey_
20.11.18
✎
13:49
|
(0) а где https(ЗащищенноеСоединениеOpenSSL)?
|
|
3
vaneSySs
20.11.18
✎
13:54
|
(1)
Сложно как то))
(2) С ним тоже самое
|
|
4
Lexey_
20.11.18
✎
13:56
|
(3) ОтветВВидеСтроки пробовал читать?
|
|
5
vaneSySs
20.11.18
✎
13:56
|
(4) Точняк, ключ не найден(
|
|
6
vmlspb
20.11.18
✎
13:57
|
АдресТекст = ТвойАдресСайта;
АдресСтраницы = "/api/integration/load?type="+КатегорияСтрока;
ПользовательПароль = "Пользователь:Пароль";
СоединениеHTTP = Новый HTTPСоединение(АдресТекст,,,,,,Новый ЗащищенноеСоединениеOpenSSL);
ЗаголовкиHTTP = Новый Соответствие();
ЗаголовкиHTTP.Вставить("Authorization","Basic "+ЗакодироватьBase64(ПользовательПароль));
ЗаголовкиHTTP.Вставить("Content-Type","text/xml");
ЗапросHTTP = Новый HTTPЗапрос(АдресСтраницы,ЗаголовкиHTTP);
ЗапросHTTP.УстановитьТелоИзСтроки(ТелоPOST(ПолноеИмяФайла));
ОтветHTTP = СоединениеHTTP.ОтправитьДляОбработки(ЗапросHTTP);
Возврат ОтветHTTP;
|
|
7
arsik
гуру
20.11.18
✎
14:03
|
(6) Да ему достаточно наверно
ЗаголовокHTTP.Вставить("Api-Key", "f04b7bf1-320d-43f7-b906-9d7a71998c38");
или типа такого, только ключь надо декодировать
Запрос.УстановитьТелоИзСтроки("Api-Key=f04b7bf1-320d-43f7-b906-9d7a71998c38&Query=66%3A06%3A4501018%3A305%3B66%3A06%3A4501018%3A2131&Comment=%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D1%8B%D0%B9%20%D0%BF%D1%80%D0%BE%D0%B3%D0%BE%D0%BD");
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший