这是我的app.js文件。
var express = require('express'),
bodyParser = require('body-parser'),
oauthServer = require('oauth2-server'),
oauth_model = require('./app_modules/oauth_model')
const app = express()
app.use(bodyParser.urlencoded({ extended: true }));
var jsonParser = bodyParser.json();
app.oauth = oauthServer({
model: oauth_model, // See below for specification
grants: ['password', 'refresh_token'],
debug: process.env.OAUTH_DEBUG,
accessTokenLifetime: 172800,
refreshTokenLifetime: 172800,
authCodeLifetime: 120,
});
// Oauth endpoint.
app.all('/oauth/token', app.oauth.grant());
// User registration endpoint.
app.post('/users', jsonParser, require('./routes/register.js'));
// Get user details.
app.get('/users', app.oauth.authorise(), require('./routes/users.js'));
app.post('/', app.oauth.authorise(), require('./routes/test.js'));
app.use(app.oauth.errorHandler());
app.listen(3000, function () {
console.log('Mixtra app listening on port 3000!')
})
当我向localhost:3000/users
发送一个带有POST请求的无效json正文时,请求转到register.js
,验证码在那里工作。
但奇怪的是,当我发送有效的JSON正文时,它会显示“无法POST /用户”,其中包含404 Not Found HTTP状态代码,并且终端日志中没有任何内容。
注意:我正在使用邮递员发送api请求。
如果有人可以帮助我,那真的很棒。
谢谢,
喜
答案 0 :(得分:1)
我没有看到您使用jsonParser
你应该在发送任何json之前使用它
app.use(jsonParser);