Tag: 表单

Node.js,express,html表单req.body是未定义的

我不明白为什么req.body是未定义的。 它总是访问node.js server'/ formstuff'中的函数,但是req.body是未定义的。 当我看看它发布到cmd的结果,我没有看到我的查询任何地方。 其实res.query和res.params是空的。 任何帮助将不胜感激,谢谢。 performance: var express = require('express'), app = express(); var fs = require('fs'); var Promise = require('promise'); // Handle Get Request app.get('/', function(req, res){ // get stuff from request var index; fs.readFile('./form.html', function (err, data) { if (err) { throw err; } index = data; res.setHeader("Content-Type", "text/html"); res.send(index); }); […]

用js上传文件并在数据库中存储表单信息(mysql)

我正在build立一个网站,用户需要填写信息的名字,姓氏,个人资料图片,数字等等…我已经编码的forms,我正在寻找一种方式与节点js上传图像在一个特定的目录(或一个默认的目录),并存储用户填入我的数据库的信息。 我使用节点js和Express与MySQL。 更新: (我使用了强大的包和util包)。 请注意,对于图像部分,我只需要path(您将在输出部分看到它)。 表格代码: <form method="post" action="upload" enctype="multipart/form-data"> <fieldset> <input type="file" accept="image/*" name="image" required /><br/> <label for="Prenom">Prénom: </label> <input type="text" name="user_prenom" id="Prenom" required /><br/> <label for="Nom">Nom: </label> <input type="text" name="user_nom" id="Nom" required /><br/> <label for="Mail">E-Mail: </label> <input type="email" name="user_mail" id="Mail" required/><br/> <label for="Pays">Pays: </label> <input type="text" name="user_pays" id="Pays" required/><br/> <label for="Ville">Ville: </label> <input […]

在用户填写表单时上传文件

我正在创build一个表单,用户可以发布包含照片的广告。 访问此表格之前,用户不需要login/注册。 当用户填写表单时,我需要asynchronous上传照片。 (例如,gumtree.com.au可让您在制作新广告时上传照片) 我知道,只要用户select文件,我们就可以开始上传文件。 但是,在服务器端,当用户提交表单时,如何识别这些文件呢? 如果用户放弃未填写的表单,如何处理上传的文件? 什么是典型的devise模式才能正确实现?

在节点和expression式中形成元素数组键

尽pipe我尽了最大的努力,但我一直在获取提交给NodeJS和Express以及句柄的表单元素的数组键。 我的表单元素看起来像这样: {{#each block}} <input type='text' name='block_payout[{{id}}]' /> {{/each} 这会在浏览器中产生以下标记: <input type='text' name='block_payout[14]' /> <input type='text' name='block_payout[15]' /> <input type='text' name='block_payout[16]' /> 在PHP中这将导致一个数组作为$ _POST数组的元素: $_POST [ block_payout [ 14 => value1 15 => value2 16 => value3 ] ] 但是,Node / Express中的req.body属性会删除这些键并创build一个索引数组: req.body [ block_payout [ 0 => value1 1 => value2 2 => value3 […]

上传文件时抓取API和multer错误

我试图使用获取API上传文件到一个node.js服务器(我使用github的pollyfill,如果它与它有关: https : //github.com/github/fetch )。 请求是这样完成的: const data = new FormData(); data.append('file', file); return fetch(this.concatToUrl(url), { method: 'post', headers: Object.assign({}, this.getHeaders(), {'Content-Type': 'multipart/form-data'}), body: data, }); 在服务器端,我有这个路由的声明: app.post('/media', upload.single('file'), mediaRoutes.postMedia); 并试图获得这样的文件: exports.postMedia = function(req, res) { console.log('req.file', req.file, req.files, req.body); return res.sendStatus(200); } 但req.file没有被填充。 另外,我从expression方面得到这个错误: Error: Multipart: Boundary not found [2] at new Multipart (/Users/jmanzano/Development/web/test/node_modules/busboy/lib/types/multipart.js:58:11) […]