无法将jpeg图像转换为正确的字节数组

时间:2015-09-29 15:15:17

标签: javascript java jquery ajax

我试图通过SOAP服务调用发送一些数据。目前我遇到问题,要发送正确的图像数据格式(或者我可能还不知道其他一些问题)。

我正在使用笔记本电脑摄像头拍照并通过jpeg电话将ajax数据传递到我的后端并成功完成。我正在使用的JavaScript库来自:

https://github.com/jhuckaby/webcamjs

拍完照片后,我将图片发送到后端,所以在$.ajax我这样做了:

data : JSON.stringify({imageData : data})

在我的java端,我通过将它从String转换为byte[]来抓取imageData:

String imageData = jsonObj.getString("imageData");
byte[] finalImage = imageData.getBytes();

我现在遇到的问题是,如果我将此finalImage字节数组发送到SOAP服务调用,我收到错误响应,说文件丢失或太大(超过1mb)。我做了一个finalImage.length,它返回7120.所以我认为文件的大小绝对不会超过1mb。

我使用Snipping Tool从我的Windows操作系统创建了一个test.jpeg文件并执行了以下操作,并且愉快地接受了SOAP服务,testImage字节数组的长度为7884:

File fi = new File("test.jpeg");
byte[] testImage= Files.readAllBytes(fi.toPath());

可能是什么原因?文件格式不正确?

1 个答案:

答案 0 :(得分:0)

我不认为图像文件可能会重7kb ...这里有些问题...也许检查文件是否有任何问题或类似的东西。

相关问题