我已经从 html5 画布中检索了 base64 数据 uri。在我的 servlet 中,我想解码数据 uri 并将其用作输入流,如下面的“xxx”所示。下面的代码是让我将 html5 画布中的图像发布到我的 facebook 帐户中。我正在使用restfb。
FacebookType publishPhotoResponse = facebookClient.publish("me/photos", FacebookType.class,
BinaryAttachment.with("test.jpeg", getClass().getResourceAsStream("xxx")),
Parameter.with("message", "Test"));
我怎样才能做到这一点?谢谢。
更新了越来越近但仍然无法正常工作!
在我的jsp中:
var d = document.getElementById('img').src;
window.location.href = "upload?src=" + d;
在我的 servlet 中:
String d = req.getParameter("src");
String head = "data:image/jpeg;base64,";
String base64 = d.substring(head.length()-1);
byte[] buf = DatatypeConverter.parseBase64Binary(base64);
ByteArrayInputStream is = new ByteArrayInputStream(buf);
FacebookType publishPhotoResponse = facebookClient.publish("me/photos", FacebookType.class,
BinaryAttachment.with("test.jpeg", is),
Parameter.with("message", "Test"));
我的编码中是否有任何错误,因为它似乎在 servlet 中的某个地方遇到了错误。我无法查看错误,因为它在服务器上运行。