You've already forked OpenIntegrations
mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-08-10 22:41:43 +02:00
Проба proxy
This commit is contained in:
@@ -3,6 +3,7 @@
|
|||||||
#Использовать "../../tools"
|
#Использовать "../../tools"
|
||||||
#Использовать "../../help"
|
#Использовать "../../help"
|
||||||
#Использовать "../../data"
|
#Использовать "../../data"
|
||||||
|
#Использовать "internal"
|
||||||
|
|
||||||
Перем Версия; // Версия программы
|
Перем Версия; // Версия программы
|
||||||
Перем Отладка; // Флаг вывода отладочной информации
|
Перем Отладка; // Флаг вывода отладочной информации
|
||||||
@@ -125,7 +126,7 @@
|
|||||||
Справка.ВывестиСправкуПоПараметрам(ПараметрыМетода);
|
Справка.ВывестиСправкуПоПараметрам(ПараметрыМетода);
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
ТекстВыполнения = СформироватьСтрокуВызоваМетода(Параметры, ПараметрыМетода, Модуль, Метод);
|
ТекстВыполнения = ОбработкаКоманд.СформироватьСтрокуВызоваМетода(Параметры, ПараметрыМетода, Модуль, Метод);
|
||||||
|
|
||||||
Если Отладка Или Тестирование Тогда
|
Если Отладка Или Тестирование Тогда
|
||||||
Сообщить(ТекстВыполнения, СтатусСообщения.Внимание);
|
Сообщить(ТекстВыполнения, СтатусСообщения.Внимание);
|
||||||
@@ -174,55 +175,6 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
Функция СформироватьСтрокуВызоваМетода(Знач ПереданныеПараметры, Знач ПараметрыМетода, Знач Модуль, Знач Метод)
|
|
||||||
|
|
||||||
ТекстВыполнения = "";
|
|
||||||
СтрокаВызова = Модуль + "." + Метод + "(";
|
|
||||||
Счетчик = 0;
|
|
||||||
|
|
||||||
Для Каждого НеобходимыйПараметр Из ПараметрыМетода Цикл
|
|
||||||
|
|
||||||
ИмяПараметра = НеобходимыйПараметр.Параметр;
|
|
||||||
ЗначениеПараметра = ПереданныеПараметры.Получить(ИмяПараметра);
|
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(ЗначениеПараметра) Тогда
|
|
||||||
|
|
||||||
ИмяПараметра = "Параметр" + СтрЗаменить(ИмяПараметра, "--", "_");
|
|
||||||
|
|
||||||
ТекстВыполнения = ТекстВыполнения
|
|
||||||
+ Символы.ПС
|
|
||||||
+ ИмяПараметра
|
|
||||||
+ " = """
|
|
||||||
+ СтрЗаменить(ЗначениеПараметра, """", """""")
|
|
||||||
+ """;";
|
|
||||||
|
|
||||||
Если ТребуетсяОбработкаУправляющихПоследовательностей(ИмяПараметра, ЗначениеПараметра) Тогда
|
|
||||||
|
|
||||||
ТекстВыполнения = ТекстВыполнения + "
|
|
||||||
|OPI_Инструменты.ЗаменитьУправляющиеПоследовательности(" + ИмяПараметра + ");
|
|
||||||
|";
|
|
||||||
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
СтрокаВызова = СтрокаВызова + ИмяПараметра + ", ";
|
|
||||||
Счетчик = Счетчик + 1;
|
|
||||||
|
|
||||||
Иначе
|
|
||||||
СтрокаВызова = СтрокаВызова + " , ";
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
ЛишниеСимволы = 2;
|
|
||||||
СтрокаВызова = Лев(СтрокаВызова, СтрДлина(СтрокаВызова) - ЛишниеСимволы);
|
|
||||||
СтрокаВызова = СтрокаВызова + ");";
|
|
||||||
СтрокаВызова = "Ответ = " + СтрокаВызова;
|
|
||||||
ТекстВыполнения = ТекстВыполнения + Символы.ПС + СтрокаВызова;
|
|
||||||
|
|
||||||
Возврат ТекстВыполнения;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Процедура УстановитьРежимОтладки(Знач Параметры)
|
Процедура УстановитьРежимОтладки(Знач Параметры)
|
||||||
|
|
||||||
Если Параметры["--debug"] Тогда
|
Если Параметры["--debug"] Тогда
|
||||||
@@ -354,18 +306,6 @@
|
|||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
Функция ТребуетсяОбработкаУправляющихПоследовательностей(Знач ИмяПараметра, Знач ЗначениеПараметра)
|
|
||||||
|
|
||||||
ФайлПараметра = Новый Файл(ЗначениеПараметра);
|
|
||||||
ЗначениеПараметраСокр = СокрЛП(ЗначениеПараметра);
|
|
||||||
|
|
||||||
Возврат Не СтрНачинаетсяС(ЗначениеПараметраСокр, "{")
|
|
||||||
И Не СтрНачинаетсяС(ЗначениеПараметраСокр, "[")
|
|
||||||
И Не ФайлПараметра.Существует()
|
|
||||||
И Не ИмяПараметра = "Параметр_out";
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
60
src/ru/cli/core/Classes/internal/Modules/ОбработкаКоманд.os
Normal file
60
src/ru/cli/core/Classes/internal/Modules/ОбработкаКоманд.os
Normal file
@@ -0,0 +1,60 @@
|
|||||||
|
Функция СформироватьСтрокуВызоваМетода(Знач ПереданныеПараметры, Знач ПараметрыМетода, Знач Модуль, Знач Метод) Экспорт
|
||||||
|
|
||||||
|
ТекстВыполнения = "";
|
||||||
|
СтрокаВызова = Модуль + "." + Метод + "(";
|
||||||
|
Счетчик = 0;
|
||||||
|
|
||||||
|
Для Каждого НеобходимыйПараметр Из ПараметрыМетода Цикл
|
||||||
|
|
||||||
|
ИмяПараметра = НеобходимыйПараметр.Параметр;
|
||||||
|
ЗначениеПараметра = ПереданныеПараметры.Получить(ИмяПараметра);
|
||||||
|
|
||||||
|
Если ЗначениеЗаполнено(ЗначениеПараметра) Тогда
|
||||||
|
|
||||||
|
ИмяПараметра = "Параметр" + СтрЗаменить(ИмяПараметра, "--", "_");
|
||||||
|
|
||||||
|
ТекстВыполнения = ТекстВыполнения
|
||||||
|
+ Символы.ПС
|
||||||
|
+ ИмяПараметра
|
||||||
|
+ " = """
|
||||||
|
+ СтрЗаменить(ЗначениеПараметра, """", """""")
|
||||||
|
+ """;";
|
||||||
|
|
||||||
|
Если ТребуетсяОбработкаУправляющихПоследовательностей(ИмяПараметра, ЗначениеПараметра) Тогда
|
||||||
|
|
||||||
|
ТекстВыполнения = ТекстВыполнения + "
|
||||||
|
|OPI_Инструменты.ЗаменитьУправляющиеПоследовательности(" + ИмяПараметра + ");
|
||||||
|
|";
|
||||||
|
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
СтрокаВызова = СтрокаВызова + ИмяПараметра + ", ";
|
||||||
|
Счетчик = Счетчик + 1;
|
||||||
|
|
||||||
|
Иначе
|
||||||
|
СтрокаВызова = СтрокаВызова + " , ";
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
ЛишниеСимволы = 2;
|
||||||
|
СтрокаВызова = Лев(СтрокаВызова, СтрДлина(СтрокаВызова) - ЛишниеСимволы);
|
||||||
|
СтрокаВызова = СтрокаВызова + ");";
|
||||||
|
СтрокаВызова = "Ответ = " + СтрокаВызова;
|
||||||
|
ТекстВыполнения = ТекстВыполнения + Символы.ПС + СтрокаВызова;
|
||||||
|
|
||||||
|
Возврат ТекстВыполнения;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
Функция ТребуетсяОбработкаУправляющихПоследовательностей(Знач ИмяПараметра, Знач ЗначениеПараметра)
|
||||||
|
|
||||||
|
ФайлПараметра = Новый Файл(ЗначениеПараметра);
|
||||||
|
ЗначениеПараметраСокр = СокрЛП(ЗначениеПараметра);
|
||||||
|
|
||||||
|
Возврат Не СтрНачинаетсяС(ЗначениеПараметраСокр, "{")
|
||||||
|
И Не СтрНачинаетсяС(ЗначениеПараметраСокр, "[")
|
||||||
|
И Не ФайлПараметра.Существует()
|
||||||
|
И Не ИмяПараметра = "Параметр_out";
|
||||||
|
|
||||||
|
КонецФункции
|
@@ -0,0 +1,3 @@
|
|||||||
|
Процедура ОсновнаяОбработка(Контекст, СледующийОбработчик) Экспорт
|
||||||
|
|
||||||
|
КонецПроцедуры
|
37
src/ru/cli/tools/Modules/ПроксиСервер.os
Normal file
37
src/ru/cli/tools/Modules/ПроксиСервер.os
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
// CLI: proxy
|
||||||
|
|
||||||
|
#Использовать "internal"
|
||||||
|
#Использовать "oint"
|
||||||
|
|
||||||
|
#Область СлужебныйПрограммныйИнтерфейс
|
||||||
|
|
||||||
|
// Разложить JSON на параметры
|
||||||
|
// Показывает значения, которые можно получить из переданного JSON и возвращает
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// JSON - Строка - JSON данные - json
|
||||||
|
// МаксимальныйУровеньВложенности - Число - Ограничение на ур. вложенности разбора. На всю глубину по умолчанию - nesting
|
||||||
|
// ИмяПараметра - Строка - Имя поля для получения. Выводит весь список, если не указано - name
|
||||||
|
// Кодировка - Строка - Кодировка, в которой записаны JSON данные - enc
|
||||||
|
//
|
||||||
|
// Возвращаемое значение:
|
||||||
|
// Строка - пустая строка
|
||||||
|
Функция Запустить(Знач Порт, Знач Проект, Знач Пароль) Экспорт
|
||||||
|
|
||||||
|
OPI_ПреобразованиеТипов.ПолучитьЧисло(Порт);
|
||||||
|
OPI_ПреобразованиеТипов.ПолучитьСтроку(Проект);
|
||||||
|
OPI_ПреобразованиеТипов.ПолучитьСтроку(Пароль);
|
||||||
|
|
||||||
|
ВебСервер = Новый ВебСервер(Порт);
|
||||||
|
Обработчик = Новый ОбработчикЗапросов();
|
||||||
|
|
||||||
|
ВебСервер.ДобавитьОбработчикЗапросов(Обработчик, "ОсновнаяОбработка");
|
||||||
|
ВебСервер.Запустить();
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
|
#Область СлужебныеПроцедурыИФункции
|
||||||
|
|
||||||
|
#КонецОбласти
|
Reference in New Issue
Block a user