Spec-Zone.ru › Angular.js 1.5

Улучшить эту документацию Просмотреть исходный код $sceDelegate

  1. $sceDelegateProvider
  2. сервис в модуле ng

$sceDelegate — это сервис, используемый сервисом $sce, чтобы предоставить AngularJS сервисы строгого контекстного экранирования (SCE).

Как правило, вы настраиваете или переопределяете $sceDelegate, а не сервис $sce, чтобы настроить работу строгого контекстного экранирования в AngularJS. Это связано с тем, что, хотя $sce предоставляет множество сокращенных методов и т. д., вам действительно нужно переопределить только 3 ключевых функции (trustAs, getTrusted и valueOf), чтобы заменить способ работы вещей, потому что $sce делегирует эти операции $sceDelegate.

Для настройки этого сервиса обратитесь к $sceDelegateProvider.

Предварительно настроенный экземпляр $sceDelegate должен работать без проблем. Хотя вы можете полностью переопределить его, чтобы изменить поведение $sce, в общем случае необходимо настроить $sceDelegateProvider, задав собственные белые и чёрные списки для доверенных URL-адресов, используемых для загрузки ресурсов AngularJS, таких как шаблоны. Обратитесь к $sceDelegateProvider.resourceUrlWhitelist и $sceDelegateProvider.resourceUrlBlacklist

Использование

$sceDelegate();

Методы

  • trustAs(type, value);

    Возвращает объект, которому Angular доверяет для использования в указанных контекстах строгого контекстного экранирования (таких как ng-bind-html, ng-include, любой интерполяции атрибута src, любой интерполяции атрибута привязки к событию DOM, например, для onclick и т. д.), использующий предоставленное значение. Смотрите $sce для включения строгого контекстного экранирования.

    Параметры

    Параметр Тип Подробности
    type string

    Тип контекста, в котором это значение безопасно для использования. Например, url, resourceUrl, html, js и css.

    value *

    Значение, которое должно считаться надёжным/безопасным.

    Возвращаемое значение

    *

    Значение, которое может использоваться для обозначения предоставленного value в местах, где Angular ожидает значения, возвращаемого $sce.trustAs().

  • valueOf(value);

    Если переданный параметр был возвращен предыдущим вызовом $sceDelegate.trustAs, возвращает значение, которое было передано $sceDelegate.trustAs.

    Если переданный параметр не является значением, возвращенным $sceDelegate.trustAs, возвращает его как есть.

    Параметры

    Параметр Тип Подробности
    value *

    Результат предыдущего вызова $sceDelegate.trustAs или что-то ещё.

    Возвращаемое значение

    *

    Значение value, которое изначально было предоставлено $sceDelegate.trustAs, если value является результатом такого вызова. В противном случае возвращает value без изменений.

  • getTrusted(type, maybeTrusted);

    Принимает результат вызова $sceDelegate.trustAs и возвращает исходное значение, если запрошенный тип контекста является супертипом созданного типа. Если это условие не выполняется, выбрасывается исключение.

    Отключение автоматического экранирования чрезвычайно опасно; оно обычно создаёт уязвимость межсайтового скриптинга (XSS) в вашем приложении.

    Параметры

    Параметр Тип Подробности
    type string

    Тип контекста, в котором это значение должно использоваться.

    maybeTrusted *

    Результат предыдущего вызова $sceDelegate.trustAs.

    Возвращаемое значение

    *

    Значение, которое было изначально предоставлено $sceDelegate.trustAs, если оно валидно в данном контексте. В противном случае выбрасывается исключение.

© 2010–2017 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://code.angularjs.org/1.5.11/docs/api/ng/service/$sceDelegate

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API