0
我的終端控制檯是給我下面的:錯誤:Route.put()需要回調函數,但有一個[對象未定義]
Error: Route.put() requires callback functions but got a [object Undefined]
這是我的應用程序>路線> articles.server.routes.js在CONSOL
// .put(users.requiresLogin, articles.hasAuthorization, articles.update)
// .delete(users.requiresLogin, articles.hasAuthorization,
當我評論這兩條線出來,錯誤:
var users = require('../../app/controllers/users.server.controller'),
articles = require('../../app/controllers/articles.server.controller');
module.exports = function(app) {
app.route('/api/articles')
.get(articles.list)
.post(users.requiresLogin, articles.create);
app.route('/api/articles/:articleId')
.get(articles.read)
// .put(users.requiresLogin, articles.hasAuthorization, articles.update)
// .delete(users.requiresLogin, articles.hasAuthorization, articles.delete);
app.param('articleId', articles.articleByID);
};
我收到錯誤以下e走開。
我在我的package.json
中有「方法重寫」:「〜2.2.0」並且它已正確安裝。我正確地在我的express.js
文件中聲明瞭它,所以我不確定我做錯了什麼。
var config = require('./config'),
express = require('express'),
morgan = require('morgan'),
compress = require('compression'),
bodyParser = require('body-parser'),
methodOverride = require('method-override'),****
session = require('express-session'),
flash = require('connect-flash'),
passport = require('passport');
module.exports = function(){
var app = express();
if (process.env.NODE_ENV === 'development'){
app.use(morgan('dev'));
} else if (process.env.NODE_ENV === 'production'){
app.use(compress());
}
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(bodyParser.json());
app.use(methodOverride());
請顯示'articles.hasAuthorization'功能 –
我明白了。我在我的用戶控制器中放置了hasAuthorization,而不是我的文章控制器。感謝500萬讓我在正確的地方看看! –
@ BenWong你可以發表一個答案,而不是評論,然後將其標記爲接受? – Ouroborus