Node.js 如何将表单数据链接到GET路由
我很确定我真的把这件事搞砸了,但我被卡住了,别无选择,只能问 我有一个简单的哈巴狗形状:Node.js 如何将表单数据链接到GET路由,node.js,forms,express,pug,body-parser,Node.js,Forms,Express,Pug,Body Parser,我很确定我真的把这件事搞砸了,但我被卡住了,别无选择,只能问 我有一个简单的哈巴狗形状: form(id="searchForm", action="/search" method="POST") input(type="text" name="keyword") input(value='Submit', type='submit') 抓取表单输入没有问题。在下面完成 app.post('/search, (req, res) => { var
form(id="searchForm", action="/search" method="POST")
input(type="text" name="keyword")
input(value='Submit', type='submit')
抓取表单输入没有问题。在下面完成
app.post('/search, (req, res) => {
var keyword = req.body.keyword
console.log(keyword) // returns user input
})
但这正是我挣扎的地方。我只想获取表单数据并将其注入:关键字。当然,我也希望在单击submit时显示该页面
app.get('/search/:keyword', (req, res) => {
scraper
.searchDictionary(req.params.keyword)
.then(words => {
res.json(words);
});
})
基本上,这是我必须完成的爬虫项目,这是其功能的关键部分。get请求工作起来很容易。如果我直接键入search/enter_关键字,我将以JSON格式获取所有的刮取数据。因此,该功能完全按照需要工作
问题是,我希望表单输入以某种方式与该路径同步,并基本上实现路径的:关键字部分。抱歉,如果这是不够的信息或这被认为不是一个好的方式做事情。如果需要,可以提问。您可以重定向到另一条路线:
app.post('/search, (req, res) => {
var keyword = req.body.keyword;
res.redirect('/search/' + keyword);
})
我不太确定我是否正确理解了您的问题,但您能否将scraper.searchDictionary(req.body.keyword)。然后(…res.json())添加到app.post('/search')路径?非常感谢。。。我之前甚至尝试过重定向,但很明显,我搞砸了!