2016-11-23 8 views
-1

XMLHttpRequest()を使用してファイルをアップロードしようとしていますが、ポストリクエストで500の内部サーバーエラーが返されています。ファイルパラメータがファイルオブジェクトを介して送信され、アクションURLが正しいことを確認しました。何か不足していますか?XMLHttpRequestファイルのアップロードで500エラーが返される

HTML:

<input type="file" class="form-control" name="documents" (change)="onFileUploadChange($event)"> 

コンポーネント:

onFileUploadChange(_event: any) { 
    let file = _event.srcElement.files; 
    let postData: any = null; 
    this._fileUploadService.uploadFile(this.uploadURL, file); 
} 

サービス:

uploadFile(_url:string,_file:File):Promise<any> { 
    return new Promise((resolve, reject) => { 

     var xhr:XMLHttpRequest = new XMLHttpRequest(); 

     console.log(_file); 
     console.log(_file[0].name); 

     xhr.onreadystatechange =() => { 
      if (xhr.readyState === 4) { 
       if (xhr.status === 200) { 
        // ... 
       } else if (xhr.status === 500) { 
        // ... 
       } 
       else { 
        // ... 
       } 
      } 
     }; 

     var formData = new FormData(); 
     formData.append('file', _file[0], _file[0].name); 

     xhr.open('POST', _url, true); 
     xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); 
     xhr.setRequestHeader('Content-Type','multipart/form-data'); 


     xhr.send(formData); 
    }); 
} 
+0

あなたは内部サーバーエラーを持っています。問題が何であるかを調べるには、サーバー側のコードをデバッグしてください。リクエストに何か問題があれば、それはあなたに何かを伝えます。 – Quentin

+0

解決済み。それはサーバーエラーでした。 – skyscript

答えて

0

500エラーは、リクエストが送信先に持って、先の問題があったことを意味します。エラーの宛先を確認してみてください。

-1

あなたは間違ったリクエストを送信することはありますか?前回は、私は同じ問題を持っているし、解決策がありました:

Saving Blob as xlsx in Angular2

関連する問題