我正在尝试将 Canvas 图像(从网络摄像头拍摄的图像中绘制)上传到文件中,然后将其保存到 servlet。

JSP 文件:

<form id="submissionForm" action="/PSA/SaveImageServlet" method="POST"  
          name="registrationForm" enctype="multipart/form-data"> 
          <input name="camera1Image" type="image" id="camera1ImageID" style="visibility:hidden" /> 
          <input name="camera1File"  type="file"  id="camera1FileID"  style="visibility:hidden" /> 
          <img   name="camera1Img"   src="" id="camera1ImgID" style="visibility:hidden" /> 
</form> 

Javascript:

var canvas1 = document.querySelector('#canvas1'); 
var ctx = canvas1.getContext('2d'); 
w = canvas1.width; 
h = canvas1.height; 
ctx.drawImage(video1, 0, 0, w, h); 
var dataUrl = canvas1.toDataURL("image/jpeg", 0.95); 
var image = new Image(); 
image.src = dataUrl; 
$("#camera1ImageID").attr("src", image.src); 
$("#camera1FileID").attr("val", image.src); 
$("#camera1ImgID").attr("src", image.src); 

在 servlet 上我有输出: 内容类型:应用程序/八位字节流 大小:0

我成功地使用 ajax 只提交了图像数据,但是不使用 ajax 是否可以做到这一点?

非常感谢

请您参考如下方法:

有两种发送方式,一种是在表单中设置input='hidden'的值并使用提交按钮提交,另一种方式是使用Ajax发送。 Servlet获取dataUrl字符串值后,可以用Java代码将其转换为File图像。 http://stackoverflow.com/a/24163254/5374508也许有用。

好知5月21日16:50


评论关闭
IT源码网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!