Vin*_*ian 8 cross-domain angularjs angular-ui-router
使用下面提到的Code1在角度Js中进行基本路由并获得" XMLHttpRequest无法加载交叉源请求仅支持协议方案:http,数据,chrome扩展,https,chrome-extension-resource "错误并且我们必须使用本地Web服务器解析相同的和下载的MAMP并保持我的html [login.html]在htdocs文件夹中启动服务器并用Code2中提到的[localhostURL/AngularJs/login.html']替换templateUrl并获得错误错误:[ $ sce:insecurl]下面给出了确切的错误,指导我在Google Chrome中修复相同的解决方案...
代码1
的index.html
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
</head>
<body ng-app="plunker">
<div ng-view=""></div>
<script src="angular.min.js"></script>
<script src="angular-route.js"></script>
<script src="app.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
app.js
var app = angular.module('plunker', ['ngRoute']);
app.config(function ($routeProvider) {
$routeProvider.when('/login',{
controller: '',
templateUrl: 'login.html'
}).otherwise({
redirectTo: '/login'
});
});
Run Code Online (Sandbox Code Playgroud)
的login.html
Hello from login!
Run Code Online (Sandbox Code Playgroud)
码2
所有其他事情都与app.js中的更改相同
var app = angular.module('plunker', ['ngRoute']);
app.config(function ($routeProvider) {
$routeProvider.when('/login',{
controller: '',
templateUrl: 'http://localhost:8888/AngularJs/login.html'
}).otherwise({
redirectTo: '/login'
});
});
Run Code Online (Sandbox Code Playgroud)
错误代码1: -
XMLHttpRequest cannot load file://localhost/Users/karthicklove/Documents/Aptana%20Studio%203%20Workspace/Object_Javascript/Angular_Js/Routing/login.html. Cross origin requests are only supported for protocol schemes: http, data, chrome-extension, https, chrome-extension-resource.
错误代码2: - [$ sce:insecurl] http://errors.angularjs.org/1.2.26/ $ sce/insecurl?p0 = http%3A%2F%2Flocalhost%3A8888%2FAngularJs%2Flogin.html出错(原生)
小智 7
我得到了类似的错误.我得到了一个解决方案,我们不能在AngularJS中使用Routing将它保存在你的文件系统中.(即)file:/// C:/Users/path/to/file.html?r = 4383065'如果您使用此URL运行,则会收到错误消息.路由提供程序将使用http协议.因此,您必须将代码放在localhost中,然后从浏览器localhost/foldername/index.html运行.不要直接从文件夹中运行它
并且还像这样更改模板URL
templateUrl: '/AngularJs/login.html'
Run Code Online (Sandbox Code Playgroud)
如果您有疑问,请在此处发布.
问题可能是您正在通过不同的端口查看页面(端口 80 是默认的 http 端口),但您正在访问端口 8888,因此它会将您视为跨源请求并阻止它,认为这可能是 XSS 攻击或相似的。
如果您已经在同一端口上,请将模板网址更改为
templateUrl: '/AngularJs/login.html'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17209 次 |
| 最近记录: |