AngularJS错误仅对协议方案支持跨源请求:http,data,chrome,chrome-extension,https,chrome-extension-resource

时间:2016-05-13 13:33:43

标签: angularjs

我正在尝试使用angularJS在页面之间导航,但是当我用浏览器打开主页时它不会显示任何内容 当我在控制台中查看时,我看到了这个错误:

Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.

这是我的代码:

ViewsTestPage:

<html>
<head>
    <title>Views Test</title>
    <script src="angular.min.js"></script>
    <script  src="angular-route.min.js"></script>
    <script  src="controller.js"></script>
</head>
<body ng-app="myApp">
    <div ng-view></div>
</body>
</html>

controller.js:

var mainApp = angular.module('myApp', ['ngRoute']);

mainApp.config(function($routeProvider){
    $routeProvider
    .when('/', {
        templateUrl: 'UsersPage.html'

    })

   .when('/helloUser', {
    templateUrl: 'hello.html'
})
.otherwise({
    redirectTo: '/'
});

});

UsersPage:

Hello world <a href="#/helloUser">Hi users</a>

hello.html的

 <h1> Users Page</h1>

任何帮助请我是我的生活!!!!

2 个答案:

答案 0 :(得分:1)

来自已经分享的类似answerquestion

  1. 安装Node.js
  2. 运行npm install http-server -g,然后启动http-server C:\location\to\app
  3. 您将获得服务器地址。例如,10.122.32.213:6060(已放置随机地址)
  4. 使用上面获得的地址链接您的文件。
  5. 在您的情况下templateUrl: 'http://10.122.32.213:6060/UsersPage.html'
  6. 希望这有帮助!

答案 1 :(得分:0)

发生此错误是因为您只是直接从浏览器打开html文档。要解决此问题,您需要从Web服务器提供代码并在localhost上访问它。如果您有Apache安装程序,请使用它来提供文件。有些IDE内置了Web服务器,比如JetBrains IDE,Eclipse .. 如果你有webstorm,那么你可以从webstorm打开它。

如果你有Node.Js设置,那么你可以使用http-server。只需运行npm install http-server -g,您就可以在终端中使用它,如http-server C:\location\to\app.