Tag: forms

parsing后表单数据Node.js Express

我以这种forms获取表单数据 '——WebKitFormBoundarysw7YYuBGKjAewMhe\r\nContent-Disposition: form-data; name': '"a"\r\n\r\nb\r\n——WebKitFormBoundarysw7YYuBGKjAewMhe–\r\n 我试图find一个中间件,这将允许我访问表单数据,如: req.body.a // -> 'b' 我试过了 var express = require('express'); var app = express(); var bodyParser = require('body-parser'); // parse application/x-www-form-urlencoded app.use(bodyParser.urlencoded({ extended: false })) 我的执行是否有问题,或者我没有使用正确的中间件?

什么是用快递提交表单的首选方式?

在我的第一个Node项目中使用了Express / Express-资源库,并使用Jade进行模板化。 根据文档默认映射生成。 其中我们可以find: PUT /forums/:forum -> update 但是,我看不到提交价值的简单方法。 如何提交创build/更新? 翡翠forms可以很容易地创build和身体parsing器,但如何提交这种forms? 请注意,express-resource定义了PUT方法(不是POST)。

Express.jsforms处理和错误检查 – 正确的方法

我有一个模板,我呈现GET请求中的表单: app.get('/register', function (req, res) { res.render('register', { title: 'Register' , twitterDetails: req.session.twitterDetails } ); }); 然后我在POST请求中处理表单: app.post('/register', function (req, res, next) { // Generic validation req.assert('name', 'Name is empty').notEmpty(); req.assert('username', 'Username is empty').notEmpty(); // Email validation req.assert('email', 'Email is invalid.').isEmail(); req.assert('email', 'Email field is empty').notEmpty(); // Password validation req.assert('password', 'Password too short. Must be […]

使用Express node.js接收邮件表单中的req.body

我有一个简单的表单,发送POST数据到我的Node.JS服务器,与Express。 这是forms: <form method="post" action="/sendmessage"> <div class="ui-widget"> <input type="text" id="search" data-provide="typeahead" placeholder="Search…" /> </div> <textarea id="message"></textarea> </form> ui-widget和input与来自Twitter的自动完成库typehead相关。 这就是我如何处理服务器中的POST请求: app.post('/sendmessage', function (req, res){ console.log(req.body); usermodel.findOne({ user: req.session.user }, function (err, auser){ if (err) throw err; usermodel.findOne({ user: req.body.search }, function (err, user){ if (err) throw err; var message = new messagemodel({ fromuser: auser._id, touser: user._id, […]

处理表单中的input数组?

比方说,我必须在同一个页面上编辑一批相同types的对象: //-jade form(action='', method='POST') for each message_id in messages_ids input(type='text', name='message', id='#{message_id}') input(type='text', name='author', id='#{message_id}') input(type='submit', value='Send') 我知道我不能在后端处理这种forms的id的原因 – 它不会被发送到后端。 但是,有没有办法做到这一点? 我想在后端得到这样的东西: //js for (var i = 0; i <= req.body.message.length; i++) { console.log ( 'ObjectID: ' + req.body.message[i].id, //-? null, just to show what I'm trying to get 'Message: ' + req.body.message[i], 'Author: ' […]

如何在express.js中获取嵌套的表单数据?

在Rails中,如果你有一个带有下划线的表单,它将假设在params中有一个嵌套的布局结构: <input type="text" name="person_first" /> <input type="text" name="person_last" /> 在服务器上,你会得到: params #=> { person: { first: "Tom", last: "Hanks" } } 当我在node.js中使用Express.js时,bodyparser似乎没有做同样的事情。 查看bodyparser的代码,它只运行JSONparsing器,导致: params #=> { person_first: "Tom", person_last: "Hanks" } } 有什么方法可以得到嵌套的表单数据,就像在Rails中,当我使用Express时? 有一个图书馆,使我能做到这一点?

Express js的身体parsing器不工作?

我在我的节点服务器中使用快递以下(截断到重要的部分): var app = express.createServer(); app.all(/test/,function(req,res){ console.log(req.headers); console.log(req.body); res.send(""); }); function appStart(cobrands){ app.configure(function(){ app.use(express.bodyParser()); app.use(express.cookieParser()); app.use('/min',express.static('../min')); app.use('/js',express.static('../js')); app.use('/css',express.static('../css')); app.use('/img',express.static('../img')); }); app.listen(8080); } 然后我有一个简单的表单调用localhost:8080像这样: <form action="http://localhost:8080/test" method="post"> <input type="hidden" name="test" value="testing"/> <input type="submit" name="submit" value="to node"/> </form> 但express.bodyParser似乎没有做任何事情,而且req.body是未定义的。 以下是console.log的输出: // req.headers { host: 'localhost:8080', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_1) AppleWebKit/534.48.3 (KHTML, like Gecko) […]

提交翡翠表格

以下Jade表单模板有什么错误? 我无法得到它提交的价值。 div form(action='/signup',method='post') div(data-role='fieldcontain') fieldset(data-role='controlgroup') label(for='email') email input(id='email',type='text',value='',placeholder='@') div#passworddiv(data-role='fieldcontain') fieldset(data-role='controlgroup label(for='password') password input(id='password',type='password',value='',placeholder='') div(id='hiddendiv',data-role='fieldcontain') fieldset(data-role='controlgroup') label(for='hidden_password') password input(id='hidden_password',type='text',value='',placeholder='') div(data-role='fieldcontain') fieldset(data-type='vertical', data-role='controlgroup') label(for='showpass') show password input(id='showpass',type='checkbox') div(data-role='fieldcontain') input(type='submit',value='Sign Up',data-transition='fade', data-theme='c')

expressjs支持方法删除,并放在没有方法覆盖

如何让expressjs使用表单的删除和放置方法? <form method="DELETE" action=""> 使用上面的是在最新的稳定版本的chrome中发送一个GET请求。 这应该是一个浏览器问题? 有没有更好的方法来覆盖这个没有一个特殊的input字段来支持这些?

如何在Express(NodeJS)中validation和处理表单

有一个首选的快递表单处理和validation库吗? 我真的在寻找与Django表单中类似的抽象级别 – 即模板中的validation和错误报告。 如果客户端可以使用相同的validation,那就太好了。 有没有人用过或写过任何好的东西?