記錄一次springboot+vue+axios進行大文件上傳失敗的問題(前端+后端)


第一步:修改springboot multipart的配置

spring:
  servlet:
     multipart: 
        max-file-size: 5000MB
        max-request-size: 5000MB

第二步:修改tomcat服務器連接時間(還是springboot的配置文件)

server:
 connection-timeout: 18000000

 

前端依舊報錯:報錯如下

 

 

第三步:增大前端VUE 發送異步請求axios的超時時間

customRequest(data){ // 上傳提交
        this.$message.success("文件正在上傳!");
          const formData = new FormData() ;
          formData.append('file', data.file);
          console.log("data"+data);
          formData.append('token', "token")
          this.axios({
           method: 'post',
           timeout: 900000, //這個就是重點
           url: '/hdfs/saveFile',
           headers: {
           },
           params:{
           },
           data: formData
         }).then((response) => {
             console.log(response) 
             data.onSuccess();
           }).catch(function (error) {
             data.onError();
             console.log(error)
           })
         },

總結:

服務器端和前端 都要考慮超時的問題

VUE axios中 會發送異步請求 如果在默認的時間內獲取不到返回結果,axios就是中斷這次連接,導致后端接受文件失敗 后端報io.eof的錯誤


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM