Javascript angularjs-将XMLHttpRequest重构为$http

Javascript angularjs-将XMLHttpRequest重构为$http,javascript,angularjs,http,xmlhttprequest,Javascript,Angularjs,Http,Xmlhttprequest,我想要下面的代码 var request = new XMLHttpRequest(); request.open("PUT", dbServer + "/configItemAdd"); request.send(new FormData(form)); request.onreadystatechange = function () { if(request.readyState == 4 && request.status == 20

我想要下面的代码

var request = new XMLHttpRequest();
    request.open("PUT", dbServer + "/configItemAdd");
    request.send(new FormData(form));
    request.onreadystatechange = function () {
        if(request.readyState == 4 && request.status == 200) {   window.location.reload(); }
};
像这样

     const fd = new FormData(form);
     $http({
         method: 'PUT',
         url: dbServer + "/configItemAdd",
         data: fd
     }).then(function (resp){
         window.location.reload();
     });
问题是我收到两条错误消息: 只有标签,没有文件输入 SyntaxError:JSON中位置0处的意外标记#

通过文件输入,我得到 PayloadTooLargeError:请求实体太大

XMLHttpRequest代码使用和不使用输入文件。
请帮助:S

您必须在请求中添加额外的标题,即
{'Content-Type':'multipart/form data'}

const fd = new FormData(form);
 $http({
     method: 'PUT',
     url: dbServer + "/configItemAdd",
     Content-Type: 'multipart/form-data'
     data: fd
 }).then(function (resp){
     window.location.reload();
 });

您还需要将标题设置为
内容类型“,”多部分/表单数据“