我尝试将我的应用程序部署到heroku服务中,但在推送文件后,日志给我这个错误:错误:大多数中间件(如logger)不再与Express捆绑在一起,必须单独安装。
我的package.json是
{
"dependencies":{
"connect":"3.0.0-rc.2",
"express":"^4.1.1",
"express-logger":"0.0.2",
"gzippo":"^0.2.0",
"logfmt":"^1.1.2"
},
"devDependencies":{
"connect":"3.0.0-rc.2",
"grunt":"~0.4.1",
"grunt-autoprefixer":"~0.4.0",
"grunt-bower-install":"~1.0.0",
"grunt-concurrent":"~0.5.0",
"grunt-contrib-clean":"~0.5.0",
"grunt-contrib-compass":"~0.7.2",
"grunt-contrib-concat":"~0.3.0",
"grunt-contrib-connect":"~0.5.0",
"grunt-contrib-copy":"~0.4.1",
"grunt-contrib-cssmin":"~0.7.0",
"grunt-contrib-htmlmin":"~0.1.3",
"grunt-contrib-imagemin":"~0.3.0",
"grunt-contrib-jshint":"~0.7.1",
"grunt-contrib-uglify":"~0.2.0",
"grunt-contrib-watch":"~0.5.2",
"grunt-google-cdn":"~0.2.0",
"grunt-karma":"^0.8.3",
"grunt-newer":"~0.6.1",
"grunt-ngmin":"~0.0.2",
"grunt-rev":"~0.1.0",
"grunt-svgmin":"~0.2.0",
"grunt-usemin":"~2.0.0",
"jshint-stylish":"~0.1.3",
"karma":"^0.12.14",
"karma-jasmine":"^0.1.5",
"karma-ng-html2js-preprocessor":"^0.1.0",
"karma-ng-scenario":"^0.1.0",
"load-grunt-tasks":"~0.4.0",
"time-grunt":"~0.2.1"
},
"engines":{
"node":">=0.10.0"
},
"name":"eversnap",
"scripts":{
"test":"grunt test"
},
"version":"0.0.1"
}发布于 2014-05-08 04:28:58
看起来Express4是从Express3升级而来的,但json (可能代码也是)不是。
// package.json (Express 4)
...
"dependencies": {
"express": "~4.0.0",
"morgan": "~1.0.0",
"body-parser": "~1.0.0",
"method-override": "~1.0.0"
}
...示例代码(有关完整细节,请参阅文档):
// server.js (Express 4)
var express = require('express');
var morgan = require('morgan');
var bodyParser = require('body-parser');
var methodOverride = require('method-override');
var app = express();// Replace your Express 3 code, from
//
// app.use(express.logger('dev'));
// app.use(express.bodyParser());
// app.use(express.methodOverride());
//
// to:
app.use(morgan('dev')); // log every request to the console
app.use(bodyParser()); // pull information from html in POST
app.use(methodOverride()); // simulate DELETE and PUT
app.listen(8080);另一种选择是在package.json中更改express的版本,以使用Express3。
"express":"~3.0.0"
发布于 2017-06-20 20:13:18
我建议您安装logger包,然后在您的应用程序中使用它。我也有同样的问题,但在我安装了所需的软件包并使用它之后,例如用app.use(logger())代替了app.use(express-logger())
https://stackoverflow.com/questions/23526356
复制相似问题