Я пытаюсь передать строку base64, которая является довольно большой, используя javascript xmlhttprequest, и при отладке я могу правильно кодировать, но каким-то образом, когда он достигает сервера, некоторые его части, например, символ "+", были обнаружены отсутствующими. Многиераз я также получаю 500 внутренних ошибок сервера.в других случаях он ломается на стороне сервера.Вот мой код:
function markAttendanceSuccess(fingerPacket,id,senderId,fromDate,toDate,leave)
{
var xhttp=new XMLHttpRequest();
xhttp.open("POST","myUrl",true);
xhttp.onload=function()
{
if(this.status===200)
{
var response=this.responseText;
let index=response.indexOf(">")+1;
response=response.substring(index,response.length);
index=response.indexOf(">")+1;
let index2=response.lastIndexOf("<");
response=response.substring(index,index2).toLowerCase();
if(response==="attendance marked successfully")
{
alert("success");
}
else
{
alert(response);
}
}
else {
alert(this.statusText);
}
}
xhttp.onerror=function()
{
alert(this.responseText);
}
xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
let loginModel=JSON.parse(sessionStorage.getItem("loginModel"));
let str="";
str=fingerPacket+"~"+senderId+"~1~1~01-jan-1900~01-jan-1900~0";
}
str=btoa(str);
xhttp.send("parameter="+str);
}