如何使用Express framework从AngularJS的url中删除#?
我有一个网站,它有前端和后端。 我已将前端文件存储在客户端文件夹中,后端文件存储在管理员文件夹中。我已通过添加删除前端URL中的#标记如何使用Express framework从AngularJS的url中删除#?,angularjs,node.js,express,Angularjs,Node.js,Express,我有一个网站,它有前端和后端。 我已将前端文件存储在客户端文件夹中,后端文件存储在管理员文件夹中。我已通过添加删除前端URL中的#标记 $locationProvider.html5Mode(true); 在我的客户端app.js文件和 <base href="/"> 我已尝试将其添加到server.js文件中 var express = require('express'); var bodyParser = require('body-parser'); var app =
$locationProvider.html5Mode(true);
在我的客户端app.js文件和
<base href="/">
我已尝试将其添加到server.js文件中
var express = require('express');
var bodyParser = require('body-parser');
var app = express();
var path = require('path');
var session = require('express-session');
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/edb');
app.all('/', function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "X-Requested-With");
next()
});
app.use(session({secret: 'keyboard cat', cookie: { maxAge: 60000 }, resave: true, saveUninitialized: true }))
app.use('/', express.static('app', { redirect: false }));
app.get('/', function (req, res, next) {
res.sendFile(path.resolve('client/index.html'));
});
app.get('/admin', function (req, res, next) {
res.sendFile(path.resolve('admin/index.html'));
});
但是它需要用到client index.html文件
你有办法吗?我有办法
app.get('/*', function (req, res, next) {
res.sendFile(path.resolve('client/index.html'));
});
app.get('/admin/*', function (req, res, next) {
res.sendFile(path.resolve('admin/index.html'));
});
我在server.js文件中添加了这段代码
它的工作就像一个符咒如果我们像example.com/admin/someotherroute那样重新加载url,它会抛出错误吗?是的,我有一个解决方案,你必须放在head open标签的顶部
app.get('/*', function (req, res, next) {
res.sendFile(path.resolve('client/index.html'));
});
app.get('/admin/*', function (req, res, next) {
res.sendFile(path.resolve('admin/index.html'));
});