【问题标题】:How to pass GET form data to Express?如何将 GET 表单数据传递给 Express?
【发布时间】:2023-03-31 21:03:01
【问题描述】:

我有一个表格

<form action="./search" method="GET">
        <div class="form-group text-center">
              <input type="text" name="keyword" placeholder="Job Title" />
              <button type="submit" class="btn btn-primary">Find Jobs</button>
         </div>
</form>  

如果我在表单中输入“akron”并提交并将其传递给下一个方法,它会返回“Cannot GET /search?keyword=akron”

router.get('/search/:keyword', function(req, res) {
   res.send('hello ' + req.params.keyword + '!');
})  

但如果我输入http://localhost:3000/search/akron,它将返回“hello akron!”

传递参数的正确方法是什么?

【问题讨论】:

    标签: javascript node.js http express routing


    【解决方案1】:

    改成

    action="/search"
    

    前面带点的“./blah”语法用于文件。

    也改成

    router.get("/search"  //...
    

    并使用 req.query

    【讨论】:

    • 刚刚测试过了。那不是问题所在。没有“。”我仍然得到相同的结果。
    • 谢谢! req.query 工作和“。”也引起了问题。
    • 为什么. 会导致问题?
    猜你喜欢
    • 2019-02-02
    • 2014-04-23
    • 1970-01-01
    • 2021-11-15
    • 1970-01-01
    • 1970-01-01
    • 2013-01-26
    • 2020-05-25
    • 2021-06-23
    相关资源
    最近更新 更多