我为我的网站创建了一个支持选项,我也想显示屏幕截图。 我找到了html2canvas库,没关系-效果很好。
我要做的第一件事是准备用户屏幕截图:
$( "#openHelpModal" ).on( "click", function() {
html2canvas(document.querySelector("body"), {
onrendered: function (canvas) {
let pngUrl = canvas.toDataURL();
$('#screenshoot').text(pngUrl);
},
});
$('#helpModal').modal('show');
});
用户打开模式窗口并提交其他数据(如姓名,电话)后,我想通过ajax将这些数据发送到服务器,如下所示:
$("#help").submit(function(e) {
e.preventDefault();
s_name = $('#s_name').val();
s_phone = $('#s_phone').val();
s_screenshoot = encodeURIComponent($('#screenshoot').val());
$.ajax({
type: "GET",
url: '/help',
data: {name:s_name, phone:s_phone, screenshoot: s_screenshoot},
dataType: "json",
success: function(data)
{
}
},
error: function(data) {
}
});
});
出什么问题了?当我尝试不发送base64图像时,一切都很好...该如何解决我的问题?
答案 0 :(得分:2)
最好使用POST而不是GET来发送大数据。您很可能会超出GET请求的字符数限制。 您得到的错误没有显示确切的详细信息。这也可能是404错误,如果是这种情况,则可能是您的网络服务未接受所有这些参数,或者您的网址格式不正确。