Django 1.6+;AngularJS v1.2.6+;亚马逊Aws

Django 1.6+;AngularJS v1.2.6+;亚马逊Aws,django,angularjs,amazon-web-services,static,amazon-s3,Django,Angularjs,Amazon Web Services,Static,Amazon S3,我在将现有django应用程序与angular集成时遇到问题,我已将Amazon AWS与Boto设置为静态文件,但在使用AngularJs时,我遇到以下错误: $SCEDegate策略不允许从url加载资源。URL: 所以我调查并尝试这样做: $sceDelegateProvider.resourceUrlWhitelist(['self',djangoStaticURL]); 在我的模块配置上,但dopesn似乎不起作用,因此我尝试: templateUrl: $sceProvider.t

我在将现有django应用程序与angular集成时遇到问题,我已将Amazon AWS与Boto设置为静态文件,但在使用AngularJs时,我遇到以下错误:

$SCEDegate策略不允许从url加载资源。URL:

所以我调查并尝试这样做:

$sceDelegateProvider.resourceUrlWhitelist(['self',djangoStaticURL]);
在我的模块配置上,但dopesn似乎不起作用,因此我尝试:

templateUrl: $sceProvider.trustAsResourceUrl(djangoStaticURL + 'app/views/main.html'),
获取未定义的$sce提供程序,这是我的完整模块:

angular.module('portfolioApp', [
  'ngCookies',
  'ngResource',
  'ngSanitize',
  'ngRoute',
  'portfolioApp.filters',
]).config(function ($sce ,$routeProvider, $sceDelegateProvider) {
  $sceDelegateProvider.resourceUrlWhitelist(['self',djangoStaticURL]);
  $routeProvider
    .when('/', {
      templateUrl: $sce.trustAsResourceUrl(djangoStaticURL + 'app/views/main.html'),
      //templateUrl: djangoStaticURL + 'app/views/main.html',
      controller: 'MainCtrl'
    })
    .otherwise({
      redirectTo: '/'
    });
});

这是个坏主意吗?我应该从django走所有路线吗?还是我缺少什么?

我最终通过编辑AWS CORS配置解决了这个问题,如下所示:

选择静态文件所在的存储桶 选择属性 选择编辑CORS配置

像这样粘贴一些东西

<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    <CORSRule>
        <AllowedOrigin>http://arlefreak.herokuapp.com/</AllowedOrigin>
        <AllowedMethod>PUT</AllowedMethod>
        <AllowedMethod>POST</AllowedMethod>
        <AllowedMethod>DELETE</AllowedMethod>
        <AllowedHeader>*</AllowedHeader>
    </CORSRule>
    <CORSRule>
        <AllowedOrigin>http://*.arlefreak.com/</AllowedOrigin>
        <AllowedMethod>PUT</AllowedMethod>
        <AllowedMethod>POST</AllowedMethod>
        <AllowedMethod>DELETE</AllowedMethod>
        <AllowedHeader>*</AllowedHeader>
    </CORSRule>
    <CORSRule>
        <AllowedOrigin>*</AllowedOrigin>
        <AllowedMethod>GET</AllowedMethod>
    </CORSRule>
</CORSConfiguration>


你有没有想过这个问题?@Brendan事实上是的,检查我的答案这很有帮助!谢谢你把它贴出来。