Как добавить собственные скрипты

Вы просматриваете документацию по Apigee Edge.
Перейдите к документации по Apigee X.
Информация

Чтобы добавить собственный код JavaScript или контент HTML перед тегом <body> на каждой странице портала:

  1. Выберите Опубликовать > Порталы и выберите нужный портал.
  2. На целевой странице нажмите Настройки. Вы также можете выбрать Настройки в раскрывающемся меню на панели навигации вверху.
  3. Нажмите на вкладку Специальные скрипты.
  4. В разделе Собственные скрипты введите собственный код JavaScript в текстовое поле. Можно добавить несколько скриптов.

  5. Нажмите Сохранить.

В разделах ниже приведены примеры специальных скриптов:

Подробнее о том, как настроить отслеживание аналитики…

Как выполнить специальный скрипт во время события JavaScript onLoad или onUnload

Определите пользовательские скрипты, которые будут выполняться на каждой странице портала:

  • Загружается в DOM с помощью события JavaScript onLoad.
  • Пользователь покинул страницу, используя событие JavaScript onUnload.

Пользовательская функция должна быть определена как часть portal.pageEventListeners в глобальном пространстве имен (объявлена в переменной window).

Первым параметром событий onLoad и onUnload является текущий путь к странице (например, /quickstart). Функция onUnload получает в качестве второго параметра возвращаемое значение из вызова onLoad, что позволяет передавать контекст между двумя событиями. Используйте onUnload, чтобы удалить ненужные прослушиватели событий и выполнить другие действия по очистке.

Пример:

<script>
window.portal = {};
window.portal.pageEventListeners = {
  onLoad: (path) => {
    if (path === '/quickstart') {
      // Change text content of first <p> element to something
      // else. (DOM must be loaded when onLoad is called)
      document.getElementsByTagName('p')[0].textContent =
          'Welcome to the quick start! Be sure to send us your feedback.';
      // print a custom message to the console every second while user is on
      // quickstart page.
      const interval =
          window.setInterval(() => console.log('Hello'), 1000);
      return interval;
    }
    return undefined;
  },
  onUnload: (path, contextReturnedFromOnLoad) => {
    if (contextReturnedFromOnLoad != null) {
      // Stop printing custom message to console every second.
      window.clearInterval(contextReturnedFromOnLoad)

    }
  },
};
</script>

Для реализации решения по запросу согласия на использование файлов cookie можно использовать специальные скрипты. Существует множество популярных решений с открытым исходным кодом, реализованных на JavaScript. Выберите то, которое соответствует вашим требованиям.

Например, в следующем скрипте используется скрипт для получения информации о файлах cookie.

<script type="text/javascript" id="cookieinfo" src="//cookieinfoscript.com/js/cookieinfo.min.js">
</script>