我正在尝试为网站构建评论部分,我希望每个评论都有一个静态网址,基本上是domain.com/titles/postID/commentID,其中postID是评论回复的帖子的ID至。
这是我的代码:
exports.commentHandler = function(req, res){
comment = req.body.comment;
username = req.session.username;
buildpost.comment(comment, username)
};
这是buildpost.comment:
exports.comment = function(comment, username){
var id = makeid(7);
var comment = {comment: comment, user: username, postID: id, type: "comment"}
console.log(comment);
postdb.write(comment);
};
以下是我的app.js文件中的相关代码:
app.get('/titles/:id', home.content); //this serves the post's page, where the comments are
app.post('/comment', home.commentHandler);
这是玉石形式:
form.sbBox#commentReply(method='post', action='/comment')
如果我只是在exports.commentHandler中使用req.url或其他内容,它会返回'/ comment',这是post请求的URL而不是页面。
答案 0 :(得分:1)
然后你应该尝试POST到帖子ID,在Express中支持这个很容易:
app.post('/:postId/comments', function(req, res) {
var postId = req.params[postId]
...
})