我正在使用以下 JavaScript 代码通过 servlet 上传 HTML5 canvas base64 图像
function saveDataURL(a) {
var postData = "canvasData="+a;
var ajax = new XMLHttpRequest();
ajax.open("POST",'uploadPhoto.cgi',true);
ajax.send(postData); }
但是在服务器上,当我看到 request.getAttribute("canvasData") 时,即使我调试 java 代码请求显示为 null,它也会给我 null 值。我应该在 Java 上编写什么代码,我已经尝试解码 Base64 请求,但由于请求本身不包含任何对代码的帮助,非常感谢教程
最佳答案
除了 url 编码之外,将内容类型设置为 application/x-www-form-urlencoded
function saveDataURL(a) {
var postData = "canvasData="+encodeURIComponent(a);
var ajax = new XMLHttpRequest();
ajax.open("POST",'uploadPhoto.cgi',true);
ajax.setRequestHeader("Content-type","application/x-www-form-urlencoded");
ajax.send(postData);
}
关于java - 在servlet上上传 Canvas base64图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11852937/