mysql - 如何将字符串从客户端传递到 Node.js

标签 mysql json node.js express socket.io

在过去的几天里,我一直在寻找一种将字符串从客户端发送到 Node 的方法,但没有成功。

目前,我有一个包含十几个输入的表单和一个图像裁剪工具( fengyuanchen/cropper ),用户可以上传照片、编辑(调整大小、裁剪等...)并保存 dataURL ( data:image/png;base64,iVBORw0KGg[...]) 在变量中。我的表单输入没有问题,它们在数据库中更新得很好。我在传递包含 dataURL 的变量时遇到问题。

理想情况下,我只希望用户提交一个表单,该表单将 1)使用输入字段更新数据库,2)将 Canvas dataURL 传递到 Node ,解码,将图像保存在服务器中,并添加MySQL 中的条目。或者使用 AJAX 单独提交裁剪后的照片,而不删除对输入字段的修改。

来自SO question: Save canvas data to file 。所选答案假设“您已经知道如何将该字符串从浏览器 POST 到您的 Nodejs 服务器”。这就是我所坚持的部分。

我读过有关可能使用的信息: 1)隐藏表单字段 - 这可能/有效吗? 2) Node 的模块加载器 3)Require.js 4) socket.emit('image', dataURL)

我已将图像大小重新调整为 1024x360,以便使 dataURL 尽可能短,并提供看起来不错的照片,直到找到更好的解决方案。尽管如此,这些 dataURL 最终还是相当大(我见过一些长达 700,000 个字符)。我可以通过 JSON 发送数据吗?

任何帮助将不胜感激。

最佳答案

我建议您在客户端将base64转换回文件,然后通过FormData上传。因为无论如何你都必须将其转换回服务器上

将base64转换为文件+附加到FormData:Convert Data URI to File then append to FormData

然后使用multer从FormData中获取文件

关于mysql - 如何将字符串从客户端传递到 Node.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35163515/

相关文章:

php - 将jstree中的数据插入数据库

javascript - D3 图表无法更新 -- 选择的进入和退出属性均为空

python - 在python中为JSON输出着色

node.js - NodeJS 异步回调未完成和渲染 Handlebars 模板

node.js - Mongoose:如何通过 model.findOneAndUpdate() 检查文档是否被修改

php - 在 MySQL 查询中使用 session

mysql - 学习符合 ACID 的事务

mysql - Vagrant:如果共享/var/lib/mysql,mysql 不会启动

javascript - 如何从这个 JSON Javascript 打印数据?

node.js - Node.js 服务的打包 - 类似 .war