У меня есть этот фрагмент, где я настраиваю свое AngularJS приложение для внесения в белый список определенных URL
angular.module("MyModule").config(['$sceDelegateProvider', function ($sceDelegateProvider) {
$sceDelegateProvider.resourceUrlWhitelist(["mySite", "myOtherSite/**", "myOtherOtherSite/**"]);
}]);
Я искал везде в Интернете, и кажется, что из-за фаз Angualr JS ( настройка и запуск), объект провайдера не имеет доступа ни к одной из служб, доступных в angular - или к моим службам для всего, что имеет значение -.
Теперь из-за некоторых изменений в архитектуре, наличие жестко закодированный список URL больше не возможен. Я хотел бы сделать вызов REST, а затем настроить приложение на использование URL-адресов, возвращаемых из REST API. Поэтому я хотел бы знать, возможно ли сделать что-то подобное или я могу переопределить реализацию $ sceDelegateProvider.
angular.module("MyModule")
.config(['$sceDelegateProvider', 'myHTTPService', function ($sceDelegateProvider, myHTTPService) {
myHTTPService.callSomeAPI(function (res) {
//...someMagic stuff here
$sceDelegateProvider.resourceUrlWhitelist(magicUrls);
});
}]);