Multer是一个node.js组件,用于处理多部分/表单数据上传。
上传似乎卡在第一条消息“文件正在上传...”上。我以前可以使用它,但即使恢复到以前的代码,它仍然无法使用。我找不到什么是...
我已经录制了一个文件。现在,我将录制的文件作为 blob 获取,并想将其上传到服务器,但每当我发出请求时,都会收到 400 错误请求。如果我能得到帮助,我将非常感激 这里...
这是我的 axios post 请求。 等待 axios 。邮政( 状态===“注册” ? “api/v1/publicUsers/注册” :“api/v1/publicUsers/登录”, 表单数据, ...
我试图将图像保存在 sql 数据库中,但它给了我 MulterError: Unexpected field ,我对其他情况做了同样的事情,并且它有效......所以我不知道。 帮助!! 我试图将图像保存在 sql 数据库中,但它给了我MulterError: Unexpected field,我对其他情况做了同样的事情并且它有效......所以我不知道。 帮助!! <label id="divisionIdLabel" for="divisionIdInput">Division Name:</label> <input type="text" id="divisionIdInput" name="divisionId" aria-labelledby="divisionIdLabel"> <label id="imageLabel" for="imageInput">Image:</label> <input type="file" id="imageInput" name="image" aria-labelledby="imageLabel"> let forms = document.querySelectorAll('form'); let divisionIdInput = form.querySelector('#divisionIdInput'); let imageInput = form.querySelector('#imageInput'); formData.append('image', imageInput.files[0], imageInput.files[0].name); const divisionId = divisionIdInput.value; fetch(`/divisionData/${divisionId}`, { method: 'POST', body: formData, }) .then(response => { if (!response.ok) throw new Error('Error inserting data'); return response.text(); // Read the response as text }) .then(responseText => { console.log('Response from server:', responseText); }) .catch(error => { console.error('Error:', error); }); app.post('/divisionData/:divisionId', upload.single('image'), (req, res) => { const image = req.file.buffer; const contentType = req.file.mimetype; const { divisionId } = req.body; // Check if any of the values are null if (divisionId === undefined || image === undefined) { res.send('All fields must have values.'); return; } const insert_user_query = "INSERT INTO divisions (divisionId, image, contentType) VALUES (?, ?, ?)"; const values = [divisionId, image, contentType]; conn.query(insert_user_query, values, (err, result) => { if (err) { console.error("Database error:", err); return res.json({ error: "Failed while inserting data into database! Try to send files again." }); } return res.json({ success: true }); }); }); 我不明白为什么它会在客户端控制台中显示: POST http://localhost:8081/divisionData/(the divisionId that I inserted) 500 (Internal Server Error)Error: Error: Error inserting data at homeSettings.js:31:37 在服务器控制台中: MulterError: Unexpected field 我认为您需要向 Content-type 添加一个 'multipart/form-data' 标头,您还应该将图像文件附加为 'file' 而不是 'image',以便您的文件应像这样编辑: let forms = document.querySelectorAll('form'); let divisionIdInput = form.querySelector('#divisionIdInput'); let imageInput = form.querySelector('#imageInput'); formData.append('file', imageInput.files[0], imageInput.files[0].name); const divisionId = divisionIdInput.value; fetch(`/divisionData/${divisionId}`, { method: 'POST', headers: { 'Content-Type': 'multipart/form-data', }, body: formData, }) .then(response => { if (!response.ok) throw new Error('Error inserting data'); return response.text(); // Read the response as text }) .then(responseText => { console.log('Response from server:', responseText); }) .catch(error => { console.error('Error:', error); }); 你还应该将你的express函数包装在try-catch范围内,以发现后端的问题: app.post('/divisionData/:divisionId', upload.single('image'), (req, res) => { try{ const image = req.file.buffer; const contentType = req.file.mimetype; const { divisionId } = req.body; // Check if any of the values are null if (divisionId === undefined || image === undefined) { res.send('All fields must have values.'); return; } const insert_user_query = "INSERT INTO divisions (divisionId, image, contentType) VALUES (?, ?, ?)"; const values = [divisionId, image, contentType]; conn.query(insert_user_query, values, (err, result) => { if (err) { console.error("Database error:", err); return res.json({ error: "Failed while inserting data into database! Try to send files again." }); } return res.json({ success: true }); }); }catch(err){ return res.status(500).json({ error: `Internal Server Error ${err}` }); } });
我是 multer npm 包的新手。我构建了一个带有几个文本输入字段和文件上传字段的表单。当我输入所有字段并提交时,数据被保存并上传文件,一切正常。但是
我是学习 MERN 堆栈的初学者,正在观看本教程 https://www.youtube.com/watch?v=7BnTHapJmD0&list=PL8p2I9GklV456iofeMKReMTvWLr7Ki9At&index=44 使用 multer 上传文件...
Cloudinary 免费套餐对于小型电子商务网站来说是否足够
我正在使用Cloudinary免费计划为企业制作一个小型网站,免费套餐足够吗?因为他们每月给我 25 个学分,但不知道如何估计,大约会有 500 人加入...
即使文件类型正确,文件验证器也总是返回错误 - NestJS
我正在研究 NestJS。我想通过API上传图像文件。我在 API 中添加了验证器,但它不起作用。这是我的代码, @Post('上传') @UseInterceptors( 文件拦截器(...
我尝试在 multer 和 @aws-sdk/client-s3 的帮助下将图像从 node.js 服务器上传到 s3 存储桶。我正在使用适用于 javascript v3 的 aws-sdk。当我使用 aws-sdk for javacript v2 时,我能够...
@Post() @角色('用户','管理员') @ApiBody({ 描述: '上传文件', 类型:'对象', 要求:真实, }) @UseInterceptors(FileInterceptor('文件')) @ApiConsumes('多部分/用于...
Multer 上传不是 swagger UI / Nodejs 中的功能
我正在使用 Multer 在 swagger UI 中制作上传文件系统。 我发现这个 screenShot 问题 - 上传不是一个功能 这是类别。上传.js const multer = require("multer"); 缺点...
在 Express 应用程序中使用 Multer 时出现 TypeScript 错误
从“multer”导入 multer, { FileFilterCallback }; 从“锐利”导入锐利; 从“express”导入{NextFunction,请求,响应}; const multerStorage = multer.
fastify-multer typescript,无法访问request.file
这是我第一次使用带有 typescript 的 fastify、sequelize 作为 ORM 和 fastify-multer,当我上传图像时一切正常,但我无法从 request.file 访问文件详细信息,因为 typescr...
我正在创建一个电影项目,用户可以在其中添加、编辑和删除电影,以及书签等。 我决定使用 json-server 作为 api,因为我不想做任何太 com 的事情...
我使用 milter 和 cloudinary 进行文件上传,我也有 auth 中间件来检查令牌验证,但它给出 593 而不是 401;从我的代码来看,但与所有其他 api 一起工作正常。但不是
在这里,我正在尝试渲染后端/上传/图像中的图像。` 这是我的后端 server.js 文件 const express = require("express"); 需要(“dotenv”).config(); const cors = require("co...
我在节点中构建了一个简单的用户注册功能,其中存储用户的姓名、电子邮件、密码和头像图像。我正在使用 multer 上传图像(在 uploads/ 中),然后手动放置...
mongodb atlas 上有一个名为 food_items 的数据库文件,我想从前端表单上传图像和数据 错误:多部分:未找到边界 在新的多部分(D:com2 - 复制 ode_modu...
我对 Multer Filename 有疑问。 那么,当 multer 以随机文件名存储文件时,是否会出现两个文件在 multer 中具有相同名称的情况? 基本上我想说的是如果...
我在上传pdf时遇到问题,当我上传它时(我使用ng-file-upload),到达express.js的文件json是: { 字段名: '文件', 原名:'db.pdf', 编码:'7位', 模仿...