IE11
を使用してファイルをアップロードしようとしたときに前述のエラーを受け取った後、この質問と回答に出くわしましたXMLHttpRequest
:
var reqObj = new XMLHttpRequest();
//event Handler
reqObj.upload.addEventListener("progress", uploadProgress, false);
reqObj.addEventListener("load", uploadComplete, false);
reqObj.addEventListener("error", uploadFailed, false);
reqObj.addEventListener("abort", uploadCanceled, false);
//open the object and set method of call (post), url to call, isAsynchronous(true)
reqObj.open("POST", $rootUrlService.rootUrl + "Controller/UploadFiles", true);
//set Content-Type at request header.for file upload it's value must be multipart/form-data
reqObj.setRequestHeader("Content-Type", "multipart/form-data");
//Set header properties : file name and project milestone id
reqObj.setRequestHeader('X-File-Name', name);
// send the file
// this is the line where the error occurs
reqObj.send(fileToUpload);
行を削除するとreqObj.setRequestHeader("Content-Type", "multipart/form-data");
、問題が修正されました。
注:このエラーは、他のブラウザーでは非常に異なって表示されます。つまり、Chrome は、接続のリセットに似たものを示します。これは、Fiddler が報告するものと同様です (突然の接続クローズによる空の応答)。
また、このエラーは とは別のマシンからアップロードした場合にのみ発生しましたWebServer
(localhost では問題ありません)。