Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

feature: адаптация библиотеки Коннектор HTTP для работы в клиентском контексте. #51

Closed
wants to merge 5 commits into from

Conversation

petypen
Copy link
Contributor

@petypen petypen commented Nov 20, 2020

Решение проблемы issues #50

Адаптация библиотеки Коннектор HTTP для работы в клиентском контексте (Тонкий клиент)

Выполнено:
Добавлена обработка КоннекторHTTP_Клиент, которая содержит форму модКоннектор в модуле которой реализована библиотека.

  • методы переведены в контекст &НаКлиенте
  • для серверных методов внутри которых содержится вызов метода ХешФункция параметр Алгоритм переведен с системного перечисления на Строку
  • выполнен рефакторинг кода, изменены наименования переменных, которые конфликтовали с предопределёнными реквизитами управляемой формы
  • добавлена обработка - тест Тесты_КоннекторHTTP_Клиент

Что предстоит сделать:

  • временно упрощен алгоритм получения настроек прокси, необходимо сделать полноценную реализацию
  • не проходят тесты, которые содержат редирект
  • рефакторинг серверных методов

в клиентском контексте.

-- методы переведены в контекст НаКлиенте
-- для серверных методов, которые содержат вызов метода ХешФункция параметр
Алгоритм переведн с системного перечисления на Строку
-- добавлена обработка тест Тесты_КоннекторHTTP_Клиент
-- упрощена работа с получением настроек прокси
@petypen
Copy link
Contributor Author

petypen commented Nov 20, 2020

@vbondarevsky Владимир, прошу проверить PR

@vbondarevsky
Copy link
Owner

vbondarevsky commented Nov 23, 2020

А почему в форме, а не в общем модуле?

не проходят тесты, которые содержат редирект

Редиректы сломались на https://httpbin.org/

@petypen
Copy link
Contributor Author

petypen commented Nov 23, 2020

При встраивании библиотеки во внешние обработки приходится размещать её в модуле формы. Поэтому мне показалось, что такая реализация более удобная для повторного использования.
Если структура библиотеки требует обязательного размещения в общем модуле, дайте знать. Я внесу изменения.

@vbondarevsky
Copy link
Owner

При встраивании библиотеки во внешние обработки приходится размещать её в модуле формы. Поэтому мне показалось, что такая реализация более удобная для повторного использования.
Если структура библиотеки требует обязательного размещения в общем модуле, дайте знать. Я внесу изменения.

Тут либо встраивание в обработку/форму, либо общий модуль, но в расширении или сразу в конфигурации. Сейчас в Коннекторе используется второй вариант. Поэтому предлагаю клиентский код тоже вынести в общий модуль

-- учтены замечания vbondarevsky#51 (comment)
-- библиотека перенесена в общий клиентский модуль КоннекторHTTPКлиент
-- методы, для которых обязателен серверный контекст перенесены в модуль
КоннекторHTTPВызовСервера
-- удалена обработка КоннекторHTTP_Клиент
-- изменены тесты
-- Не работает переадресация для URL с указанным портом
@petypen
Copy link
Contributor Author

petypen commented Nov 26, 2020

@vbondarevsky Владимир, учел ваши замечания

@zeegin
Copy link
Contributor

zeegin commented May 29, 2021

Но ведь это все равно не будет работать в браузере, не?

@petypen
Copy link
Contributor Author

petypen commented May 29, 2021

@zeegin да не будет, но будет работать на стороне клиента.
Решаемая проблема:
Если вся логика обмена с ресурсом располагается на клиенте, то текущая реализация коннектора требует обращения к серверу.
Реализация Коннектора на клиенте позволит минимизировать обращения к серверу.

@zeegin
Copy link
Contributor

zeegin commented May 29, 2021

Я представляю только один сценарий где может быть полезно - мобильный клиент.

@petypen
Copy link
Contributor Author

petypen commented May 29, 2021

@zeegin Предложу еще вариант. Внешняя обработка где логика реализована на форме и по этому лазить на сервер за коннектором накладно..
Очень рад личному знакомству.

@Daabramov
Copy link
Contributor

Я представляю только один сценарий где может быть полезно - мобильный клиент.

Еще есть кейс с доменной авторизацией.

@NkLab
Copy link

NkLab commented Nov 22, 2021

@vbondarevsky , можно оживить этот pull request ?
готов предложить помощь

@leemuar
Copy link
Collaborator

leemuar commented Jul 29, 2023

@NkLab присылайте пулл-реквест, это лучшая помощь!

@leemuar
Copy link
Collaborator

leemuar commented Dec 29, 2023

Задача актуальна, но прошло уже 3 года, работы по PR судя по всему не ведутся, поэтому закрываю.

@leemuar leemuar closed this Dec 29, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants