Всем здравствовать!
Самописная конфигурация на платформе 1С:Предприятие 8.3 (8.3.3.721) управляемые формы.
По статье в интернет создал внешнюю обработку с формой:
.
Для кнопки "Авторизация" создал такую же команду.
Содержание модуля взял из той же статьи:
&НаКлиенте
Процедура Авторизация(пОписаниеДействия = Неопределено)
ПараметрыФормы = новый структура("Адрес", АдресСтраницыАутентификации());
ОО = Новый ОписаниеОповещения("ОбработатьAccessToken", ЭтаФорма, пОписаниеДействия);
ОткрытьФорму("ВнешняяОбработка.АутентификацияGoogle.Форма.ФормаАутентификации", ПараметрыФормы, Элементы.Авторизоваться, ,,,ОО, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
КонецПроцедуры
&НаКлиентеНаСервереБезКонтекста
Функция АдресСтраницыАутентификации()
ПараметрыURL = Новый Структура;
Адрес = "https://accounts.google.com/o/oauth2/v2/auth";
ПараметрыURL.Вставить("client_id", "<ваш уникальный идентификатор приложения из Google API console>.apps.googleusercontent.com");
ПараметрыURL.Вставить("redirect_uri", "http://localhost");
ПараметрыURL.Вставить("scope", "https://www.googleapis.com/auth/calendar.readonly https://www.googleapis.com/auth/calendar.events.readonly https://www.googleapis.com/auth/calendar");
ПараметрыURL.Вставить("response_type", "code");
ПараметрыURL.Вставить("prompt", "consent"); //Пользователю отображается только окно разрешения доступа к его пользовательским данным
Возврат Адрес(Адрес, ПараметрыURL);
КонецФункции // ПолучитьAuthToken()
Вроде вот:
&НаСервереБезКонтекста
Функция Адрес(Знач URL, Знач ПараметрыURL)
Перем МассивПараметров;
МассивПараметров = Новый Массив;
Для каждого Параметр Из ПараметрыURL Цикл
МассивПараметров.Добавить(Параметр.Ключ + "=" + Параметр.Значение);
КонецЦикла;
URL = СокрП(URL);
URL = ?(СтрЗаканчиваетсяНа(URL, "/"), URL, URL + "/");
Возврат URL + "?" + КодироватьСтроку(СтрСоединить(МассивПараметров, "&"), СпособКодированияСтроки.URLВКодировкеURL);
КонецФункции
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua