AngularJS和Express路由404
发布时间:2020-12-17 18:03:53 所属栏目:安全 来源:网络整理
导读:我有一个以下AngularJS应用程序: angular.module('app',['ngRoute','app.controllers']).config(['$routeProvider',function($routeProvider){ $routeProvider .when('/',{ controller: 'HomeController',templateUrl: 'views/home.html' }) .when('/garage
我有一个以下AngularJS应用程序:
angular.module('app',['ngRoute','app.controllers']) .config(['$routeProvider',function($routeProvider){ $routeProvider .when('/',{ controller: 'HomeController',templateUrl: 'views/home.html' }) .when('/garage',{ controller: 'GarageController',templateUrl: 'views/vehicle.html' }) .otherwise({ redirectTo: '/' }); }]) .config(['$locationProvider',function($locationProvider) { $locationProvider.html5Mode(true); }]); Node.js是我的后端,它的唯一目的是提供REST api(尚未实现).快速配置如下: app.use(express.static(path.join(__dirname,'public'))); app.get('*',function(req,res) { res.sendFile(__dirname + '/public/index.html'); }); 问题是每当我在地址栏中放入一些无效的URL时,就像http:// localhost:3000 / abc请求到达服务器一样.我假设它应该由AngularJS路由处理并重定向到默认的’/’页面.为什么没有发生? 谢谢 解决方法
不确定这是否有帮助,但这种路由工作得很好.
(app.js) var routes = require('./routes/index'); var users = require('./routes/users'); var api = require('./routes/api') var partials = require('./routes/partials') 然后在另一端使用以下代码来获得正在运行的角度路由: var BabyPadz = angular.module('BabyPadz',["ngResource","ngRoute"]). config(['$routeProvider','$locationProvider',function ($routeProvider,$locationProvider) { $locationProvider.html5Mode(true); $routeProvider .when('/',{ templateUrl: 'partials/index',controller: 'IndexController' }) .when('/about',{ templateUrl: '/partials/about',controller: 'AboutController' }) .when('/contactus',{ templateUrl: "partials/contactus",controller: 'ContactController' }) .when('/boompad',{ templateUrl: "partials/boompad",controller: "BoomController" }) // route for the about page .otherwise({redirectTo: "/test"}); } ] ); 我意识到我也使用ngResource,知道有一些东西在一两年前发生了变化,有些是关于角度的分裂(所以Route等等是一个单独的模块).不确定是否是这种情况. 我有时仍然得到404,但认为这是允许Angular选择路由的服务器端,但是无法完全回答该问题路由(服务器/角度)如何协同工作或优先级是什么. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |