Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何以多部分形式将画布图像上载到Javaservlet?_Javascript_Java_Jsp_Servlets_Html5 Canvas - Fatal编程技术网

Javascript 如何以多部分形式将画布图像上载到Javaservlet?

Javascript 如何以多部分形式将画布图像上载到Javaservlet?,javascript,java,jsp,servlets,html5-canvas,Javascript,Java,Jsp,Servlets,Html5 Canvas,我正在尝试将画布图像(从网络摄像头快照中绘制)上载到一个文件中,然后将其保存到servlet JSP文件: <form id="submissionForm" action="/PSA/SaveImageServlet" method="POST" name="registrationForm" enctype="multipart/form-data"> <input name="camera1Image" type="image"

我正在尝试将画布图像(从网络摄像头快照中绘制)上载到一个文件中,然后将其保存到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>
在servlet上,我有输出: contentType:应用程序/八位字节流 尺寸:0

我用ajax只提交了一个图像数据,但是没有ajax是否可以


非常感谢

有两种发送方式,一种是将值设置为表单中的输入class='hidden',并使用提交按钮提交,另一种是使用Ajax发送。Servlet获取dataUrl字符串值后,可以使用Java代码将其转换为文件映像。也许有用


Haohich 5月21日16:50有两种发送方式,一种是将值设置为表单中的input='hidden',并使用提交按钮提交,另一种是使用Ajax发送。Servlet获取dataUrl字符串值后,可以使用Java代码将其转换为文件映像。也许有用


浩志5月21日16:50

src
输入的属性只能与
input type='image'
一起使用。请参见此处:。因此,尝试使用
image.src
为您的文件输入设置
value
属性,并查看它是否有效。谢谢,我按照您的建议进行了尝试(我编辑了文章),但在我的servlet中仍然看不到任何文件或图像。大小为“0”,内容类型为“应用程序/八位字节流”,我犯了一个错误,设置
属性无法将画布图像转换为
输入文件
,转换可能很复杂。所以eaiser实现这一点的方法就是将
dataUrl
值(该值是char序列)发送到Servlet。有两种发送方式,一种是将值设置为表单中的
input='hidden'
,并使用提交按钮提交,另一种是使用Ajax发送。Servlet获得
dataUrl
字符串值后,可以使用Java代码将其转换为文件映像。也许有用,谢谢!你最后的评论很有帮助<输入的code>src属性只能与
input type='image'
一起使用。请参见此处:。因此,尝试使用
image.src
为您的文件输入设置
value
属性,并查看它是否有效。谢谢,我按照您的建议进行了尝试(我编辑了文章),但在我的servlet中仍然看不到任何文件或图像。大小为“0”,内容类型为“应用程序/八位字节流”,我犯了一个错误,设置
属性无法将画布图像转换为
输入文件
,转换可能很复杂。所以eaiser实现这一点的方法就是将
dataUrl
值(该值是char序列)发送到Servlet。有两种发送方式,一种是将值设置为表单中的
input='hidden'
,并使用提交按钮提交,另一种是使用Ajax发送。Servlet获得
dataUrl
字符串值后,可以使用Java代码将其转换为文件映像。也许有用,谢谢!你最后的评论很有帮助!
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);