Skip to content

Commit

Permalink
Привести поведение в соответствие с RFC 2068 #8
Browse files Browse the repository at this point in the history
  • Loading branch information
vbondarevsky committed May 13, 2019
1 parent 07856d1 commit e7327e8
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 5 deletions.
10 changes: 5 additions & 5 deletions src/CommonModules/КоннекторHTTP/Ext/Module.bsl
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
//
// URL: https://github.com/vbondarevsky/Connector
// e-mail: vbondarevsky@gmail.com
// Версия: 1.1.7
// Версия: 1.1.8
//
// Требования: платформа 1С версии 8.3.10 и выше

Expand Down Expand Up @@ -518,6 +518,10 @@
ПодготовленныйЗапрос.URL = КодироватьСтроку(НовыйURL, СпособКодированияСтроки.URLВКодировкеURL);
ПодготовленныйЗапрос.HTTPЗапрос.АдресРесурса = СобратьАдресРесурса(РазобратьURL(НовыйURL), Неопределено);

Если Ответ.КодСостояния = 301 И ПодготовленныйЗапрос.Метод <> "HEAD" И ПодготовленныйЗапрос.Метод <> "GET" Тогда
Возврат Ответ;
КонецЕсли;

ПереопределитьМетод(ПодготовленныйЗапрос, Ответ);

// https://github.com/requests/requests/issues/1084
Expand Down Expand Up @@ -1067,10 +1071,6 @@
Метод = "GET";
КонецЕсли;

Если Ответ.КодСостояния = 301 И Метод = "POST" Тогда
Метод = "GET";
КонецЕсли;

ПодготовленныйЗапрос.Метод = Метод;

КонецПроцедуры
Expand Down
13 changes: 13 additions & 0 deletions src/DataProcessors/Тесты/Ext/ObjectModule.bsl
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
Тест_ПолучитьGZip();
Тест_GetJson();
Тест_PostJson();
Тест_PostИРедирект();
Тест_GetJsonСтруктура();
Тест_PutJson();
Тест_DeleteJson();
Expand Down Expand Up @@ -318,6 +319,18 @@

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

Процедура Тест_PostИРедирект()

Ответ = КоннекторHTTP.Get("https://httpbin.org/redirect-to?url=https%3A%2F%2Fya.ru&status_code=301");
УтверждениеВерно(Ответ.КодСостояния, 200);

Ответ = КоннекторHTTP.Post("https://httpbin.org/redirect-to?url=https%3A%2F%2Fya.ru&status_code=301");
УтверждениеВерно(Ответ.КодСостояния, 301);

ТестПройден("Тест_PostИРедирект");

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

Процедура Тест_PutJson()

Результат = КоннекторHTTP.PutJson("https://httpbin.org/put", Новый Структура("Название", "КоннекторHTTP"));
Expand Down

0 comments on commit e7327e8

Please sign in to comment.