2017-04-17 53 views
0

我有一個網站,它有一個前端和後端。 我已將前端文件存儲在客戶端文件夾中,後端文件存儲在admin文件夾中。我已經在我的客戶加入如何使用Express框架從AngularJS的url中刪除#?

$locationProvider.html5Mode(true); 

刪除#標籤從前端URL app.js文件和

<base href="/"> 

在客戶端加入index.html文件

我在加入

同樣的事情admin文件夾中的文件也index.html我添加

<base href="/admin"> 

但仍然,它不工作。

這裏是我的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')); 
}); 

我曾嘗試加入這個在server.js文件

app.get('/admin', function (req, res, next) { 
     res.sendFile(path.resolve('admin/index.html')); 
    }); 

,但它採取客戶index.html文件。

您有解決方案嗎?

+0

任何解決方案還工作? – atjoshi

+0

是的,我得到了一個解決方案 – Athi

+0

你必須把放在頂部旁邊打開標籤 – Athi

回答

0

我得到了一個解決方案

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文件中的代碼

它像一個魅力

+0

如果我們像example.com/admin/sotherotherroute重新加載url,它會拋出錯誤 – atjoshi

相關問題