gpt4 book ai didi

node.js - `express` 应用程序 - 无法使用 `post` 测试 `postman` 请求

转载 作者:太空宇宙 更新时间:2023-11-03 22:46:20 25 4
gpt4 key购买 nike

我创建了一个小型express应用程序。我只是想测试 post 方法。但它根本不起作用。据我说一切都很好。但我无法弄清楚这个问题。请有人帮助我吗?

我的 server.js 文件:

var express = require('express');
var bodyParser = require('body-parser');
var Post = require('./models/post');

var app = express();
app.use(bodyParser.urlencoded({
extended: true
}));

app.use(bodyParser.json());

app.get('/api/posts', function( req, res) {
res.json([
{
username:"dickeyxxx",
body : "node rocksxx"
}
])
});


app.post('/api/posts', function( req, res, next) {

var post = new Post({
username:req.body.username,
body:req.body.body
})

post.save(function(err, post){
if(err) { return next }
res.json(201,post);
})

})



app.listen(5000, function(){
console.log('Server Listening on', 5000);
})

我的 post.js :

var db = require('../db');
var Post = db.model('Post', {
username:{type:String, required:true},
body:{type:String,required:true},
date:{type:Date, required:true,default:Date.now}
});

module.exports = Post;

我的db.js:

var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/social', function(){
console.log( 'mongoose connected' ); //i am getting consoled
});

module.exports = mongoose;

我与 postman 的尝试:

postman screen shot

有人可以帮我吗?

最佳答案

你的res.json(201,post);是错误的。

如果您想发送状态 201,则使用

res.status(201).json(post);

参见http://expressjs.com/en/api.html#res.json

关于node.js - `express` 应用程序 - 无法使用 `post` 测试 `postman` 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38116767/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com