节点JS的HTTP服务器和主机angularJS SPA

问题描述 投票:14回答:3

我有写在angularJS和咕噜构建的应用程序。有没有一种方法,我可以创建一个从节点JS一个HTTP服务器和主机它。请分享任何代码片段或文件,这将有助于。谢谢

angularjs node.js gruntjs single-page-application httpserver
3个回答
15
投票
  1. (简单),如果你没有任何服务器端逻辑,你可以简单地通过服务从NPM HTTP服务器模块客户端AngularJS / HTML / CSS。 https://www.npmjs.com/package/http-server只需通过$>安装NPM安装-g HTTP服务器,并转到您的客户端文件夹,键入http服务器,然后回车。
  2. 如果你有服务器端的代码编写,(ExpressJS或网页的RESTify API),然后使用$> nodemon server.js
  3. 如果您正在寻找在产品应用程序的选项,可以考虑永远/ PM2 https://www.npmjs.com/package/pm2 https://www.npmjs.com/package/forever

5
投票

使用下面的代码在你的app.js文件。

var express = require('express');

var path = require('path');
var bodyParser = require('body-parser');
var app = express();

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: false}));
app.use(express.static(path.join(__dirname, 'public')));

/* GET home page. */
app.get('/', function(req, res, next) {
  //Path to your main file
  res.status(200).sendFile(path.join(__dirname+'../public/index.html')); 
});

module.exports = app;

使用app.js运行node app.js文件


0
投票

这对我的工作例如与任何情况下,

即使你有基本的网址或不

source code here

var express = require('express');
var path = require('path');
var bodyParser = require('body-parser');
/**
 * This server should host angular appliation with or without base-url
 * The angular static resources should be under `./public`
 */
var app = express();
app.use(function(req, res, next) {
  console.log('Time:', Date.now() + ":", req.originalUrl)
  next()
})
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
  extended: false
}));
app.use(express.static(path.join(__dirname, 'public')));
app.use('/base-here-if-any', express.static(path.join(__dirname, 'public')))

app.get('*', function(req, res, next) {
  //Path to your main file
  res.status(200).sendFile(path.join(__dirname + '/public/index.html'));
});


const port = 3000


app.listen(port, () => console.log(`Example app listening on port ${port}!`))
© www.soinside.com 2019 - 2024. All rights reserved.