NodeJs服务器不托管客户端/公共
NodeJs server does not host client/public
当我尝试启动nodejs
服务器时,它不会调用client/public
文件夹。当我指向http://localhost:3000
错误:在找不到/home/shankar/projects/apiDocs/server/server.js:36:12 atLayer.handle[作为handle_request](/home/shankar/projects/apiDocs/node_modules/express/lib/router/layer.js:95:5)在trim_preix(/home/shankar/projects/apiDocs/node_modules/express/lib/router/index.js:312:13)在/home/shankar/projects/apiDocs/node_modules/express/lib/router/index.js:280:7位于Function.prrocess_params(/home/shankar/projects/apiDocs/node_modules/express/lib/router/index.js:330:12)在next(/home/shankar/projects/apiDocs/node_modules/express/lib/router/index.js:271:10)在/home/shankar/projects/apiDocs/node_modules/express/lib/router/index.js:618:15在next(/home/shankar/projects/apiDocs/node_modules/express/lib/router/index.js:256:14)位于Function.handle(/home/shankar/projects/apiDocs/node_modules/express/lib/router/index.js:176:3)在路由器(/home/shankar/projects/apiDocs/node_modules/express/lib/router/index.js:46:12)
下面是我的server.js代码
var express = require('express');
var path = require('path');
var logger = require('morgan');
var bodyParser = require('body-parser');
var mongoose = require('mongoose');
var app = express();
app.use(express.static(path.join(__dirname, "public")));
app.use(logger('dev'));
app.use(bodyParser.json({limit: '50mb'}));
mongoose.connect('mongodb://127.0.0.1:27017/app', function (error) {
if (error) {
console.log(error);
}
});
app.all('/*', function(req, res, next){
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Methods", "GET, PUT, POST, DELETE, OPTIONS");
res.header("Access-Control-Allow-Headers", "Content-type,Accept,X-Access-Token,X-Key");
if(req.method === 'OPTIONS'){
res.status(200).end();
} else {
next();
}
});
app.all("/api/v1/*", [require('./middlewares/validateRequest')]);
app.use("/", require("./routes"));
app.use(function(req, res, next){
var err = new Error("Not found");
err.status = 404;
next(err);
});
app.set('port', process.env.PORT || 3000);
var server = app.listen(app.get('port'), function() {
console.log('Express server listening on port ' + server.address().port);
});
我试图在同一台服务器上运行我的客户端和restful服务,当我启动my server on port 3000
时,我希望客户端和服务器在同一服务器上。
文件夹结构:
/app
--node-modules
--public
--app //contains all angularjs related files
--assets //contains images and js libraries
--index.html
--server
--server.js
尝试使用这个:
app.use(express.static('./.'));
这应该让express能够看到您的文件
- 客户端服务器REST API captcha实现
- 使用谷歌应用程序脚本将服务器端数据表返回到客户端
- 如何使用Socket.io将命令从客户端发送到服务器
- 如何轻松地将服务器端变量从Java代码转移到客户端代码
- Meteor方法在客户端返回null,在客户端运行的相同方法返回正确的值
- 从客户端获取修改后的对象,并将其与服务器上的原始对象组合
- 如何将我的javascript库公开给其他客户端使用
- 是否可以使用JavaScript/AAJAX在客户端创建一个文件
- 如何使用Javascript客户端对象模型检索Sharepoint 2010列表项权限
- 返回/从Twit's客户端.get
- 将客户端特定的日期格式返回到服务器MVC4
- MobileFirst:在客户端运行计时器作业-最佳选项
- 标签客户端的设置值
- 我的客户端选项是什么
- 公共第一方客户端的适当OAuth2流
- 获取客户端机器's使用Asp/Javascript的精确IP地址(非公共IP)
- 如何在不泄露应用机密的情况下从客户端访问 Facebook 公共数据
- NodeJs服务器不托管客户端/公共
- 如何从客户端javascript在没有凭据的情况下将文件上传到s3公共bucket
- 可序列化对象排除从客户端调用我的公共属性