Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

#132 Исправлена ошибка в параметрах запроса со спец. символами #135

Merged
merged 2 commits into from
Mar 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions src/en/CommonModules/HTTPConnector/Ext/Module.bsl
Original file line number Diff line number Diff line change
Expand Up @@ -424,7 +424,7 @@ Function NewSession() Export
Session.Insert("Headers", DefaultHeaders());
Session.Insert("Authentication", Undefined);
Session.Insert("Proxy", Undefined);
Session.Insert("RequestParameters", New Structure);
Session.Insert("RequestParameters", New Map);
Session.Insert("VerifySSL", True);
Session.Insert("ClientSSLCertificate", Undefined);
Session.Insert("MaximumNumberOfRedirects", MaximumNumberOfRedirects());
Expand Down Expand Up @@ -955,7 +955,7 @@ Function PrepareRequest(Session, Method, URL, AdditionalParameters) Export
AuthenticationFromAdditionalParameters =
SelectValue(Undefined, AdditionalParameters, "Authentication", New Structure);
RequestParametersFromAdditionalParameters =
SelectValue(Undefined, AdditionalParameters, "RequestParameters", New Structure);
SelectValue(Undefined, AdditionalParameters, "RequestParameters", New Map);
HeadersFromAdditionalParameters =
SelectValue(Undefined, AdditionalParameters, "Headers", New Map);

Expand Down
10 changes: 10 additions & 0 deletions src/en/DataProcessors/Tests/Ext/ObjectModule.bsl
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ Function TestsList() Export
Tests.Add("Test_XmlSending");
Tests.Add("Test_ReadResponseAsXDTO");
Tests.Add("Test_ComplexRequestParameters");
Tests.Add("Test_RequestParametersSpecialSymbols");
Tests.Add("Test_PostEmptyJson");
If TestAuthentificationAWS4_HMAC_SHA256 Then
Tests.Add("Тест_AuthentificationAWS4_HMAC_SHA256");
Expand Down Expand Up @@ -1010,6 +1011,15 @@ Procedure Test_ComplexRequestParameters() Export

EndProcedure

Procedure Test_RequestParametersSpecialSymbols() Export

Result = HTTPConnector.GetJson("https://connectorhttp.ru/anything?q-w=1&e.r=2&t[]=42");
AssertEquals(Result["args"]["q-w"], "1");
AssertEquals(Result["args"]["e.r"], "2");
AssertEquals(Result["args"]["t[]"], "42");

EndProcedure

Procedure Test_PostEmptyJson() Export

Json = New Structure;
Expand Down
4 changes: 2 additions & 2 deletions src/ru/CommonModules/КоннекторHTTP/Ext/Module.bsl
Original file line number Diff line number Diff line change
Expand Up @@ -492,7 +492,7 @@
Сессия.Вставить("Заголовки", ЗаголовкиПоУмолчанию());
Сессия.Вставить("Аутентификация", Неопределено);
Сессия.Вставить("Прокси", Неопределено);
Сессия.Вставить("ПараметрыЗапроса", Новый Структура);
Сессия.Вставить("ПараметрыЗапроса", Новый Соответствие);
Сессия.Вставить("ПроверятьSSL", Истина);
Сессия.Вставить("КлиентскийСертификатSSL", Неопределено);
Сессия.Вставить("МаксимальноеКоличествоПеренаправлений", МаксимальноеКоличествоПеренаправлений());
Expand Down Expand Up @@ -1209,7 +1209,7 @@
АутентификацияИзДополнительныхПараметров =
ВыбратьЗначение(Неопределено, ДополнительныеПараметры, "Аутентификация", Новый Структура);
ПараметрыЗапросаИзДополнительныхПараметров =
ВыбратьЗначение(Неопределено, ДополнительныеПараметры, "ПараметрыЗапроса", Новый Структура);
ВыбратьЗначение(Неопределено, ДополнительныеПараметры, "ПараметрыЗапроса", Новый Соответствие);
ЗаголовкиИзДополнительныхПараметров =
ВыбратьЗначение(Неопределено, ДополнительныеПараметры, "Заголовки", Новый Соответствие);

Expand Down
10 changes: 10 additions & 0 deletions src/ru/DataProcessors/Тесты/Ext/ObjectModule.bsl
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@
Тесты.Добавить("Тест_ОтправкаXml");
Тесты.Добавить("Тест_ПрочитатьОтветКакXDTO");
Тесты.Добавить("Тест_СложныеПараметрыЗапроса");
Тесты.Добавить("Тест_ПараметрыЗапросаСоСпециальнымиСимволами");
Тесты.Добавить("Тест_PostПустойJson");
Если ТестироватьАутентификациюAWS4_HMAC_SHA256 Тогда
Тесты.Добавить("Тест_АутентификацияAWS4_HMAC_SHA256");
Expand Down Expand Up @@ -1044,6 +1045,15 @@

КонецПроцедуры

Процедура Тест_ПараметрыЗапросаСоСпециальнымиСимволами() Экспорт

Результат = КоннекторHTTP.GetJson("https://connectorhttp.ru/anything?q-w=1&e.r=2&t[]=42");
УтверждениеВерно(Результат["args"]["q-w"], "1");
УтверждениеВерно(Результат["args"]["e.r"], "2");
УтверждениеВерно(Результат["args"]["t[]"], "42");

КонецПроцедуры

Процедура Тест_PostПустойJson() Экспорт

Json = Новый Структура;
Expand Down
Loading