javascript - 调整图像大小并附加到 HTML 表单的正确方法?

标签 javascript forms image post resize

我正在尝试在提交表单之前调整客户端图像的大小,然后将其附加到表单中。当我最初提交这个时,它似乎工作正常。但在服务器端它仍然上传原始文件。这可能吗?

最佳答案

我在解决同样的问题时才注意到这篇文章。 不可能用调整大小的输入来替换用户选择的"file"类型的输入。出于安全原因,浏览器不允许这样做。 该表单是使用同步 HTTP POST 发布的。根据一些文章,更改后的图像应该异步发布。所有示例都使用 XHR 或 Ajax 来实现此目的。 可能的解决方案似乎是这样的: 1)调整图像大小并将canvas转换为dataUrl或blob; 2) 向表单添加新的隐藏字段或将图像上传移到表单之外; 3)使用XHR或Ajax发布调整大小的图像; 4)从"file"类型的原始输入中删除名称属性(这将阻止其提交)或忽略服务器端; 5) 在服务器上解码 dataUrl 并将图像保存在您的上传文件夹中。

关于javascript - 调整图像大小并附加到 HTML 表单的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40706331/

相关文章:

javascript - 尝试使用 JSON 的点表示法从 Stripe API 获取特定键值时遇到问题

javascript - 有条件渲染的 map 功能

javascript - 在reactjs中正确过滤其他数组中的数组

javascript - jQuery 中的复杂表单验证

javascript - 当我单击框中的任意位置时,如何正确选中此复选框?

javascript - 如何检测数组中的重复字符,并相应地创建一个参数?

Javascript 表单操作在使用 onsubmission 事件确认之前执行

c# - 为什么这个图像阈值在 windows 中有效,但在 mono/linux 中无效?

java - 加载图片后,imageview不更新

reactjs - 使用图像作为 react 选择的图标