当前位置: 首页 > 面试题库 >

无法在Chrome中使用文件协议打开Angular应用

蔚学真
2023-03-14
问题内容

嗨,我对angularjs和chrome有问题,这是代码:

   var angularRoutingApp = angular.module('angularRoutingApp', ['ngRoute'])

   // Configuración de las rutas
   .config(function($routeProvider) 
   {

 $routeProvider
    .when('/', {
        templateUrl : 'pages/home.html',
        controller  : 'mainController'
    })
    .when('/artistas', {
        templateUrl : 'pages/artistas.html',
        controller  : 'artistasController'
    })
    .when('/login', {
        templateUrl : 'pages/login.html',
        controller  : 'loginController'
    })
    .otherwise({
        redirectTo: '/'
    });
    });

如果我用Opera,Firefox或safary打开index.html,则没有任何问题,但如果我用Chorme打开,则不能运行routerprovider,并在控制台中显示如下错误消息:

XMLHttpRequest无法加载file://localhost/Users/multivideo/Desktop/FTL-
Angular/pages/home.html。跨源请求仅支持HTTP。index.html:1

Error: A network error occurred.
at Error (native)
at https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:72:206
at C (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:68:99)
at f (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:66:69)
at C (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:92:375)
at C (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:92:375)
at https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:94:28
at h.$eval (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:102:293)
at h.$digest (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:100:50)
at h.$apply (https://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js:103:100) angular.js:9413

问题答案:

Chrome使用严格的同源政策。您可以做两件事:

1)您通常不应该从开始发展file://。使用甲基苯丙胺,你的内置Apache
Web服务器
或其他方式来建立一个本地Web服务器。如果您使用的是Mac,按照我提供的路径推测,您可以通过打开终端并输入以下命令来启动基于Python的非常简单的http服务器

$> python -m SimpleHTTPServer 8080

这将从您调用它的文件夹中的端口8080上打开一个简单的HTTP服务器。

2)您可以(但实际上不应)放松Chrome的安全设置。这是可能的,但是通常是不好的做法。



 类似资料:
  • 嗨,我对angularjs和chrome有问题,代码如下: 如果我打开索引。使用Opera、Firefox或safary的html我没有任何问题,但是如果我使用Chorme打开此文件,请不要使用routerprovider,并在控制台中显示错误消息,如下所示: 无法加载XMLHttpRequestfile://localhost/Users/multivideo/Desktop/FTL-Angul

  • 问题内容: 我使用Windows桌面搜索开发Java应用程序,从中可以检索有关计算机文件的一些信息,例如url(System.ItemUrl)。这样的URL的一个例子是 用于“普通”文件。此字段还提供从Outlook或Thunderbird索引的邮件项目的URL。雷鸟的项目(仅适用于Vista和7)也是文件(.wdseml)。但是Outlook的项目网址以“ mapi://”开头,例如: 我遇到的

  • 如果Chrome能在我期望的时候打开文件,那就太好了。我会很感激你的帮助。

  • 我用保存了一个文件。我的应用程序中的docx扩展名。该文件保存在sdcard中。该文件在我的sdcard中显示为word文件,但我无法打开它(使用polaris或任何其他默认软件),并显示消息“不支持的文件”。 当我保存扩展名为. txt的文件时,我可以打开它。 谢谢亚历山德鲁...但现在我在运行应用程序时收到一条错误消息,指出“此元素的Javadoc既无法在附加的源代码中找到,也不能在附加的Ja

  • 我想打开一个PDF文件时,用户点击一个按钮。目前,我正在使用这段代码来实现这一点: 但不管用。 当我选择使用Adobe Acrobat时,我会得到一条显示为Toast的消息,它说 当我尝试使用Drive PDF Viewer时,我得到 PDF文件存储在 问题出在哪里? 编辑 现在我使用的是以下代码: 但当我尝试通过点击按钮打开PDF时,应用程序崩溃了。 这是我得到的日志: 这是我的课: } 有人能

  • 问题内容: 我想从android应用程序中打印文件。同样,在google上搜索后,我发现一些有用的信息,我将不得不在HTTP中使用IPP(Internet打印协议)。而且我是ipp的新手,但是我使用过HTTP。那么有人可以帮我吗?谁能给我一些有用的信息或链接?提前致谢 ? 问题答案: 您需要发出具有一些特殊功能的HTTP PUT请求,您必须: 使用端口631代替80(当然,除非明确指定了端口)。