如何获取节点中当前页面的URL?

时间:2013-01-13 21:24:26

标签: node.js express

我正在尝试为网站构建评论部分,我希望每个评论都有一个静态网址,基本上是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而不是页面。

1 个答案:

答案 0 :(得分:1)

然后你应该尝试POST到帖子ID,在Express中支持这个很容易:

app.post('/:postId/comments', function(req, res) {
  var postId = req.params[postId]
  ...
})