--- +title: Параметры для статических встраиваний +redirect_from: - /docs/latest/embedding/signed-embedding-parameters --- # Параметры для статических встраиваний Также известны как параметры для подписанного встраивания или автономного встраивания. Параметры — это данные, которые передаются между GlarusBI и вашим веб-сайтом через [URL-адрес встраивания](./static-embedding.md#adding-the-embedding-url-to-your-website). Вы можете использовать параметры, чтобы указать, как элементы GlarusBI должны выглядеть и вести себя внутри iframe на вашем веб-сайте. ## Типы параметров Параметры могут быть подписанными или неподписанными. **Подписанные параметры**, такие как имена и значения фильтров, должны быть добавлены в ваш код сервера. - [Редактируемые параметры](#Добавление-виджета-фильтра-в-статическое-встраивание) - [Заблокированные параметры](#Ограничение-данных-в-статическом-встраивании) **Неподписанные параметры**, такие как настройки внешнего вида, должны быть добавлены непосредственно в атрибут `src` вашего iframe. - [Значения по умолчанию для редактируемых параметров](#Заполнение-виджета-встроенного-фильтра-значением-по-умолчанию) - [Настройки видимости для редактируемых параметров](#Скрытие-виджетов-фильтров-из-статического-встраивания) - [Настройки внешнего вида](#Настройка-внешнего-вида-статического-встраивания) ## Добавление виджета фильтра в статическое встраивание Вы можете использовать **редактируемые параметры**, чтобы добавить виджеты фильтров во встроенные информационные панели или вопросы SQL. 1. Перейдите на панель управления или на вопрос SQL. Убедитесь, что вы настроили [фильтр дашборда](../dashboards/filters.md) или [переменную SQL](../questions/native-editor/sql-parameters.md). 2. Нажмите на **значок общего доступа** > **Встроить этот элемент в приложение**. 3. В разделе **Параметры** вы найдете имена фильтров вашего дашборда или переменных SQL. 4. Выберите **Редактируемый** для каждого параметра, который должен получить виджет фильтра во встраивании. 5. Нажмите **Опубликовать**, чтобы сохранить изменения. 6. Добавьте или обновите код на своем сервере, чтобы он [соответствовал коду, сгенерированному GlarusBI](./static-embedding.md#previewing-the-code-for-an-embed). Редактируемые параметры отвечают за передачу значений фильтра из встроенного виджета фильтра (отображаемого в iframe). ### Вы не можете отключить параметры, если исходный запрос или дашборд требуют значения. Если фильтр дашборда или запрос имеет установку [Всегда требовать значение](../dashboards/filters.md#requiring-a-filter), вы не сможете убрать этот параметр при встраивании. ## Заполнение виджета встроенного фильтра значением по умолчанию Если вы хотите установить значение по умолчанию для вашего [редактируемого виджета фильтра](#Добавление-виджета-фильтра-в-статическое-встраивание), вы можете передать его в соответствующее имя параметра в атрибуте `src` вашего iframe. ``` your_embedding_url?parameter_name=value ``` Например, если на встроенной информационной панели есть фильтр "Завтрак", и вы хотите установить значение по умолчанию "Яичница-болтунья": ``` your_embedding_url?breakfast=Scrambled_eggs ``` Чтобы указать значения по умолчанию для нескольких фильтров, разделите фильтры амперсандами (&): ``` your_embedding_url?breakfast=Scrambled_eggs&lunch=Grilled_cheese ``` Вы можете установить несколько значений по умолчанию для фильтра, разделив пары `key=value` амперсандами (&): ``` your_embedding_url?breakfast=Scrambled_eggs&breakfast=Bacon ``` ## Скрытие виджетов фильтров из статического встраивания Если у вас много редактируемых параметров (что приводит к большому количеству виджетов фильтров), вы можете скрыть их из вашего статического встраивания, добавив `#hide_parameters` в конец URL-адреса в атрибуте `src` вашего iframe: ``` your_embedding_url#hide_parameters=parameter_name ``` Например, если вы хотите скрыть фильтр «Завтрак» из вашей встроенной информационной панели: ``` your_embedding_url#hide_parameters=breakfast ``` Вы можете скрыть несколько виджетов фильтров, разделив имена параметров запятыми: ``` your_embedding_url#hide_parameters=breakfast,lunch ``` Вы можете одновременно назначить параметру значение по умолчанию _и_ скрыть его виджет фильтра: ``` your_embedding_url?breakfast=Scrambled_eggs#hide_parameters=breakfast ``` ## Неподписанный синтаксис параметров Каждый раз, когда вы добавляете параметр в URL-адрес встраивания в атрибуте `src` вашего iframe, обратите внимание, что: - Параметр _names_ пишется в нижнем регистре. - Параметр _values_ чувствителен к регистру (они должны совпадать с вашими данными). - Пробелы должны быть заменены символами подчеркивания. ## Ограничение данных в статическом встраивании Если вы хотите ограничить данные, отображаемые на встроенном дашборде или в вопросе SQL, вы можете настроить **заблокированный параметр**. Заблокированный параметр фильтрует данные дашборда или в вопросе SQL _перед_ тем, как результаты отображаются конечному пользователю в статическом внедрении. 1. Перейдите на дашборд или на вопрос SQL. Убедитесь, что вы настроили [фильтр дашборда](../dashboards/filters.md) или [переменную SQL](../questions/native-editor/sql-parameters.md). 2. Нажмите на **значок общего доступа** > **Встроить этот элемент в приложение**. 3. В разделе **Параметры** вы найдете имена фильтров вашего дашборда или переменных SQL. 4. Выберите **Заблокировано** для каждого параметра, которым вы хотите ограничить свои данные. 5. Опционально: выберите значение в разделе **Предварительный просмотр заблокированных параметров**, чтобы увидеть, как выглядят ограниченные данные. 6. Нажмите **Опубликовать**, чтобы сохранить изменения. 7. Добавьте или обновите код на своем сервере, чтобы он [соответствовал коду, сгенерированному GlarusBI](./static-embedding.md#previewing-the-code-for-an-embed). Вы можете использовать заблокированные параметры для отображения отфильтрованных данных на основе атрибутов, полученных вашим веб-сервером, таких как имя пользователя или идентификатор арендатора. Для получения дополнительных примеров см. [репозиторий справочных приложений](https://github.com/metabase/embedding-reference-apps). Заблокированные параметры применят выбранные значения фильтра к вашему исходному дашборду или вопросу SQL, но они не будут отображаться как виджеты фильтра в вашем встраивании. Заблокированные параметры также могут ограничить значения, отображаемые в ваших [редактируемых виджетах фильтра](#Добавление-виджета-фильтра-в-статическое-встраивание). Если вы просто хотите, чтобы для параметра требовалось значение, вы можете сделать фильтр редактируемым и настроить базовый запрос или дашборд на [всегда требовать значение](../dashboards/filters.md#requiring-a-filter). ## Изменение заблокированного параметра Следующие вещи необходимо учитывать, если вам нужно внести изменения в ваши заблокированные параметры. ### Включите все заблокированные параметры в свой код сервера Как только вы опубликовали диаграмму или дашборд с заблокированным параметром, вы должны включить имя заблокированного параметра в свой код сервера. Если вы забудете сделать это, в журналах появится сообщение вроде этого: `You must specify a value for :parameter in the JWT`. ### Удостоверьтесь, что имя фильтра совпадает с именем заблокированного параметра Если вы изменили имя фильтра, используемого в качестве заблокированного параметра, убедитесь, что вы обновили имя и значение(я) параметра в своем коде сервера. Вам не нужно делать это, если ваш заблокированный параметр связан с [переменной SQL](../questions/native-editor/sql-parameters.md). ### Множественные заблокированные параметры или множественные значения Значения заблокированных параметров в вашем коде сервера должны точно соответствовать значениям ваших фильтров. Лучший способ установить несколько заблокированных параметров или передать несколько значений в заблокированный параметр - это выбрать значение фильтра в разделе **Предварительный просмотр заблокированных параметров** и [предварительный просмотр сгенерированного GlarusBI кода сервера](./static-embedding.md#previewing-the-code-for-an-embed). ## Заблокированные параметры на дашбордах с вопросами SQL Если ваш [заблокированный параметр](#Ограничение-данных-в-статическом-встраивании) связан с фильтром дашборда, который, в свою очередь, связан с вопросом SQL, вы сможете выбрать только _одно_ значение для заблокированного параметра. Например, предположим, что у вас есть фильтр дашборда под названием «Завтрак» со значениями «Яичница-болтунья», «Бекон» и «Вафли». Если фильтр «Завтрак» связан с _любыми_ вопросами SQL на дашборде, вы сможете выбрать только _один_ из вариантов для заблокированного параметра связанного с фильтром "Завтрака". ## Настройка внешнего вида статического встраивания Вы можете изменить внешний вид встроенного элемента, добавив параметры хэша в конец URL-адреса в атрибуте `src` вашего iframe. Например, следующий URL-адрес встраивания будет отображать встроенный элемент в темном режиме, без границ и с его исходным заголовком: ``` your_embedding_url#theme=night&bordered=false&titled=true ``` Вы можете предварительно просмотреть настройки внешнего вида из [настроек внешнего вида встраивания](./static-embedding.md#customizing-the-appearance-of-static-embeds) вашего вопроса или дашборда. | Parameter name | Possible values | | ----------------------------------------- | --------------------------------------------- | | `bordered` | true, false | | `titled` | true, false | | `theme` | null, transparent, night | | `refresh` (dashboard only) | integer (seconds, e.g., `refresh=60`) | | `font`\* | [font name](../configuring-metabase/fonts.md) | | `hide_download_button`\* (questions only) | true, false | \* Available on [Pro](https://www.metabase.com/product/pro) and [Enterprise](https://www.metabase.com/product/enterprise) plans. ### Позволить людям скачивать результаты встроенных запросов {% include plans-blockquote.html feature="Downloading results" %} По умолчанию Glarus BI включает кнопку **скачать** на строенных запросах. Вы можете удалить кнопку скачать с помощью `hide_download_button=true` во встраиваемом URL в iframe аттрибуте `src`, см. [customizing the appearance of static embeds](./static-embedding.md#customizing-the-appearance-of-static-embeds). Если кнопка загрузки отсутствует, хотя вы ожидали ее появления, проверьте, что URL-адрес в атрибуте `src` для вашего iframe имеет параметр `hide_download_button=false`. > Скачивание результатов доступно только для запросов, а не дашбордов. ## Максимальный размер запроса Максимальная длина URL-адреса статического встраивания (включая все параметры) - это значение вашей переменной окружения [`MB_JETTY_REQUEST_HEADER_SIZE`](../configuring-metabase/environment-variables.md#mb_jetty_request_header_size). По умолчанию это 8192 байта. Если ваш URL-адрес статического встраивания превышает максимальный размер заголовка, вы увидите сообщение в логах наподобие `URI too long`. Вы можете изменить переменную окружения, чтобы допустить использование больших заголовков. Если вы используете прокси-сервер, вам может потребоваться установить соответствующее свойство на сервере. ## Дополнительная информация - [Документация по статическому встраиванию](./static-embedding.md). - [Стратегии предоставления клиентской аналитики. Документация Metabase](https://www.metabase.com/learn/embedding/embedding-overview). - [Публикация визуализаций данных в Интернете. Документация Metabase](https://www.metabase.com/learn/embedding/embedding-charts-and-dashboards).