Tag: 格式表

Express是否要求我使用POST路由删除?

以下代码在单击并确认button时成功删除logging: 路由器(Express): router.post('/meetings/delete/:slug', catchErrors(meetingController.deleteMeeting)); 控制器: exports.deleteMeeting = async (req, res) => { const slug = req.params.slug; const meeting = await Meeting.remove({ slug }); req.flash('success', 'meeting successfully deleted!'); res.redirect(`/meetings`); }; 查看模板(帕格/翡翠): form.delete-meeting-form(method='POST' action=`/meetings/delete/${meeting.slug}?_method=DELETE`) input.button.button–delete(type='submit' value='DELETE MEETING' onclick='return confirm("Are you sure you want to delete this meeting? (Cannot be undone)")') 此代码原样工作。 然而,我似乎很奇怪,我似乎需要使用POST路由,以完成我的DELETE请求。 当我尝试使用router.delete来形成路由时,它不起作用。 我明白,HTML不支持DELETE和PUT / PATCH请求,但为什么命名我的Express路由delete是一个问题? 我做错什么了吗?

在Node.js POST请求中,Jadeforms返回空表示

我用express和node.js来创build一个飞行日志数据库的前端,作为我培训的一部分。 我已经确认我的input有名称 ,我的身体分析器设置为应用程序/ JSON ,并且我的路线出现在我的中间件声明后 ,但我的req.body对象保持未定义。 我的问题是为什么。 这里是我的玉器forms的一个领域: .row.col-sm-16 div.input-group.form-control form(action='',method='POST') div(data-role='fieldcontain') fieldset(data-role='controlgroup') label(for='HobbsOut') HobbsOut &nbsp &nbsp &nbsp input(id='HobbsOut',type='text',value='',placeholder='hobbs in generated',name='HobbsOut') 低于这个差距的每件事都会重复。 提交button: div.text-center button.btn.btn-default.input-group-button Submit buttondiv与'data-role'divsalignment。 相关路线: app.post('/logadd', ctrl.addFlight); 而相关的控制者: module.exports.addFlight = function (req, res) { console.log(req.body.HobbsOut); res.redirect('/loglist'); }; 目前我只是试图打印第一个字段,并将用户redirect到航class日志。 我在多个应用程序中遇到此问题。 我知道如何将用户input推入数据库是非常重要的。 任何和所有的帮助,不胜感激。