我无法接收文件上传参数后面的参数。这是其文档中给出的船长问题。建议在进入服务器之前,在单击“提交”按钮时对参数进行重新排序。谁能告诉我如何重新排序表单中的所有参数,我已经搜索了答案,但无法获得所需的结果。
Ejs 文件(客户端)
<h2>
Enter Details
</h2>
<br>
<div class="container">
<form action ="/upload" id="form" method="POST" enctype="multipart/form-data">
Name:<input type="text" id='name' name='name' placeholder="Enter Name"/>
File:<input type="file" name="uploadFile" />
<a onclick="clearFileInputField('uploadFile')" href="javascript:noAction();">
Clear
</a>
<br>
Address:<input type="text" id='address' name='address'/>
mobile:<input type="string" id='mobile' name='mobile'/>
pincode:<input type="string" id='pincode' name='pincode'/>
<button type="submit" id="submit" class="btn btn-success" >
Submit
</button>
</form>
</p>
<script>
function clearFileInputField(tagId) {
document.getElementById(tagId).innerHTML =
document.getElementById(tagId).innerHTML;
}
</script>
</div>
文件 Controller (服务器端)
/**
* FileController
*
* @description :: Server-side logic for managing files
* @help :: See http://sailsjs.org/#!/documentation/concepts/Controllers
*/
module.exports = {
upload: function(req,res){
console.log(req.body);
var uploadFile = req.file('uploadFile');
uploadFile.upload(function onUploadComplete (err, files) {
// Files will be uploaded to .tmp/uploads
if (err) return res.serverError(err);
// IF ERROR Return and send 500 error with error
res.json({status:200,file:files});
});
}
};
输出: { 名称:'测试' }
期望的输出: { 名称:'测试', 地址:'地址', 手机:'1234567891', 密码:'21341'}
最佳答案
我通过使用伪表单解决了我的问题。可以使用简单的 javascript formData 来制作伪表单。
文件未包含在 formData 中。它们是使用 AJAX 调用服务器异步上传的。
关于javascript - 在 sails.js 中重新排序文件上传的表单参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35682512/