在POST请求中使用url参数

时间:2018-07-28 22:39:40

标签: node.js express post

在单个请求中同时使用url参数和POST数据时遇到了麻烦。

我有一个表格:

<form method="POST" action="" class="form-inline" _lpchecked="1">
    <label for="facetname">Add ethnicity</label>
    <input id="facetname" type="text" placeholder="ethnicity name" class="form-control"><button type="submit" class="btn btn-primary">Submit</button>
</form>

然后将其发布到我的facet路线,如下所示:

router.post('/:facettype', FacetController.facet_create_post);

FacetController然后尝试访问facettype对象的facetnamereq.params元素,但它仅包含facettype

exports.facet_create_post = (req,res,next) => {

    let facet_type = req.params.facettype;
    let name = req.params.facetname;

}; 

我也尝试过req.body,它是空白的。

我错过了什么吗?还是使用URL参数删除了使用POST请求的能力?

1 个答案:

答案 0 :(得分:0)

我发现了这个问题,主要是我所怀疑的愚蠢。

我忘记了以下输入形式的name参数:

<input id="facetname" type="text" placeholder="ethnicity name" class="form-control">

应该是:

<input id="facetname" name="facetname" type="text" placeholder="ethnicity name" class="form-control">