#ONECICD-211

Исправление замечаний IDE
Ошибка создания страницы
This commit is contained in:
aleksey.koryakin
2019-11-13 15:08:10 +03:00
parent 77349f422b
commit 0009bdd6fa
+22 -25
View File
@@ -16,7 +16,7 @@
//
// Параметры:
// АдресСервера - Строка - Адрес (URL) сервера confluence. Например "https://conflunece.mydomain.ru"
// Пользователь - Строка - Имя пользователя для покдлючения
// Пользователь - Строка - Имя пользователя для подключения
// Пароль - Строка - Пароль пользователя для подключения
//
// Возвращаемое значение:
@@ -60,7 +60,7 @@
URL = ПолучитьURLОперации(КодПространства, ИмяСтраницы);
РезультатЗапроса = ВыполнитьHTTPЗапрос(ПараметрыПодключения, "GET", URL);
Если РезультатЗапроса.КодСостояния = 200 Тогда
Если УспешныйЗапрос(РезультатЗапроса) Тогда
ПарсерJSON = Новый ПарсерJSON;
Ответ = ПарсерJSON.ПрочитатьJSON(РезультатЗапроса.Ответ);
@@ -98,7 +98,7 @@
URL = ПолучитьURLОперации(,, Идентификатор);
РезультатЗапроса = ВыполнитьHTTPЗапрос(ПараметрыПодключения, "GET", URL);
Если РезультатЗапроса.КодСостояния = 200 Тогда
Если УспешныйЗапрос(РезультатЗапроса) Тогда
ПарсерJSON = Новый ПарсерJSON;
@@ -136,7 +136,7 @@
URL = ПолучитьURLОперации(,, Идентификатор) + "&expand=body.storage";
РезультатЗапроса = ВыполнитьHTTPЗапрос(ПараметрыПодключения, "GET", URL);
Если РезультатЗапроса.КодСостояния = 200 Тогда
Если УспешныйЗапрос(РезультатЗапроса) Тогда
Регексп = Новый РегулярноеВыражение("""body"":{""storage"":{""value"":""([\w\W]*?)"",""representation"":""storage");
Регексп.Многострочный = ИСТИНА;
@@ -180,7 +180,7 @@
URL = ПолучитьURLОперации(,, Идентификатор, "child/page");
РезультатЗапроса = ВыполнитьHTTPЗапрос(ПараметрыПодключения, "GET", URL);
Если РезультатЗапроса.КодСостояния = 200 Тогда
Если УспешныйЗапрос(РезультатЗапроса) Тогда
ПарсерJSON = Новый ПарсерJSON;
Ответ = ПарсерJSON.ПрочитатьJSON(РезультатЗапроса.Ответ);
@@ -249,7 +249,7 @@
ИдентификаторСтраницы = "";
РезультатЗапроса = ВыполнитьHTTPЗапрос(ПараметрыПодключения, "POST", URL, ТелоЗапроса);
Если РезультатЗапроса.КодСостояния = 200 Тогда
Если УспешныйЗапрос(РезультатЗапроса) Тогда
ИдентификаторСтраницы = НайтиСтраницуПоИмени(ПараметрыПодключения, КодПространства, ИмяСтраницы);
@@ -341,7 +341,7 @@
РезультатЗапроса = ВыполнитьHTTPЗапрос(ПараметрыПодключения, "PUT", URL, ТелоЗапроса);
Если РезультатЗапроса.КодСостояния <> 200 Тогда
Если НЕ УспешныйЗапрос(РезультатЗапроса) Тогда
ВызватьИсключение "Ошибка обновления страницы:" + КодПространства + "." + ИмяСтраницы + ТекстОшибки(РезультатЗапроса, URL);
@@ -453,7 +453,7 @@
РезультатЗапроса = ВыполнитьHTTPЗапрос(ПараметрыПодключения, "POST", URL, ТелоЗапроса);
Если РезультатЗапроса.КодСостояния = 200 Тогда
Если УспешныйЗапрос(РезультатЗапроса) Тогда
Результат = Истина;
@@ -461,8 +461,6 @@
ВызватьИсключение "Ошибка прикрепления метки:" + ТекстОшибки(РезультатЗапроса, URL);
Результат = Ложь;
КонецЕсли;
Возврат Результат;
@@ -481,7 +479,7 @@
Тело = СтрокаJSON(ПараметрыОперации);
РезультатЗапроса = ВыполнитьHTTPЗапрос(ПараметрыПодключения, "POST", URLОперации, Тело, "text/html; charset=UTF-8");
Если РезультатЗапроса.КодСостояния = 200 Тогда
Если УспешныйЗапрос(РезультатЗапроса) Тогда
Возврат РезультатЗапроса.Ответ;
@@ -510,15 +508,15 @@
Функция Создать(ПараметрыПодключения, АдресСтраницы, Содержимое = Неопределено) Экспорт
HTTPМетод = "PUT";
HTTPМетод = "POST";
ПараметрыКоманды = ПараметрыСозданияОбновления(ПараметрыПодключения, АдресСтраницы, Содержимое, , HTTPМетод);
ПараметрыКоманды = ПараметрыСозданияОбновления(ПараметрыПодключения, АдресСтраницы, Содержимое);
URL = ПолучитьURLОперации();
РезультатЗапроса = ВыполнитьHTTPЗапрос(ПараметрыПодключения, HTTPМетод, URL, СтрокаJSON(ПараметрыКоманды));
Если РезультатЗапроса.КодСостояния = 200 Тогда
Если УспешныйЗапрос(РезультатЗапроса) Тогда
ИдентификаторСтраницы = НайтиСтраницуПоИмени(ПараметрыПодключения, АдресСтраницы.КодПространства, АдресСтраницы.ИмяСтраницы);
@@ -578,13 +576,13 @@
HTTPМетод = "PUT";
ПараметрыКоманды = ПараметрыСозданияОбновления(ПараметрыПодключения, АдресСтраницы, Содержимое, Версия, HTTPМетод);
ПараметрыКоманды = ПараметрыСозданияОбновления(ПараметрыПодключения, АдресСтраницы, Содержимое, Версия);
ТелоЗапроса = СтрокаJSON(ПараметрыКоманды);
РезультатЗапроса = ВыполнитьHTTPЗапрос(ПараметрыПодключения, HTTPМетод, URL, ТелоЗапроса);
Если РезультатЗапроса.КодСостояния <> 200 Тогда
Если НЕ УспешныйЗапрос(РезультатЗапроса) Тогда
ВызватьИсключение "Ошибка обновления страницы:" + АдресСтраницы.КодПространства + "." + АдресСтраницы.ИмяСтраницы + ТекстОшибки(РезультатЗапроса, URL);
@@ -594,7 +592,7 @@
КонецФункции // ОбновитьСтраницу()
Функция ПараметрыСозданияОбновления(ПараметрыПодключения, Адрес, Содержимое, Версия = Неопределено, HTTPМетод = Неопределено)
Функция ПараметрыСозданияОбновления(ПараметрыПодключения, Адрес, Содержимое, Версия = Неопределено)
ПараметрыКоманды = Новый Структура();
ПараметрыКоманды.Вставить("type", "page");
@@ -637,12 +635,6 @@
Значение = ПреобразоватьMarkdownToConfluence(ПараметрыПодключения, Значение);
ТелоСтраницы = Новый Структура("editor", Новый Структура("value, representation", Значение, "editor"));
Если Версия = Неопределено Тогда
HTTPМетод = "POST"; // Создание страниц в markdown через POST остальное PUT
КонецЕсли;
Иначе
ТелоСтраницы = Новый Структура("storage", Новый Структура("value, representation", Значение, "storage"));
@@ -734,8 +726,6 @@
ПараметрыПодключения.Пользователь,
ПараметрыПодключения.Пароль);
Сообщить(СтрШаблон("%1: %2/%3", Метод, ПараметрыПодключения.АдресСервера, URL));
Если СтрСравнить(Метод, "GET") = 0 Тогда
Ответ = HTTP.Получить(HTTPЗапрос);
@@ -762,6 +752,13 @@
КонецФункции // ВыполнитьHTTPЗапрос()
Функция УспешныйЗапрос(РезультатЗапроса)
КодОтветаУспешно = 200;
Возврат РезультатЗапроса.КодСостояния = КодОтветаУспешно;
КонецФункции
Функция СтрокаJSON(Значение)
ПараметрыЗаписи = Новый ПараметрыЗаписиJSON(Ложь, , Истина, , , , , , Истина);