使用formdata等格式傳參調用服務一些寫法


未有特別說明均為原創,轉載注明出處。

 

最近在使用后端提供的服務時,要求使用formdata格式傳參。

而平時都是這樣使用的

export async function doDownloadfile(params) {
   return request(`${urlConfig.downloadfile}?fileId=${params[0]}&orderId=${params[1]}`, {
      method: 'get',
      headers: {
         'token': localStorage.getItem("token")
      },
   });
}

或者這樣

export async function doInvoice(params) {
   return request(`${urlConfig.invoice}`, {
      method: 'post',
      headers: {
         'Content-Type': 'application/json;charset=UTF-8',
         'token': localStorage.getItem("token")
      },
      body: JSON.stringify(params)
   });
}

JSON.stringify({"body":params[0],"companyName":params[1]})也可以這樣寫成鍵值對形式。

或者使用axios,set或者append都可以

   let formData = new FormData()
   formData.set('body', params[0])
   formData.set('companyName', params[1]);
   formData.set('payType', params[2]);
   formData.set('orderNum', params[3]);
   formData.set('total_fee', params[4]);
   formData.set('token', params[5]);
   axios({
      method: 'post',
      url: `${urlConfig.pcPay}`,
      data: formData,
      headers: {
        'Content-Type':'multipart/form-data',//'application/json;charset=UTF-8'
        'token': localStorage.getItem('token')
      }
    }).then(function (response) {
      return response;
      }
    )
      .catch(function (error) {
        return error;
      });

但是使用request

  const reqParam ={
      method:'post',
      url:`${urlConfig.pcPay}`,
      headers: {
        'Accept':'application/json;charset=UTF-8',//深淵巨坑!
        'token': localStorage.getItem('token')
      },
      body:formData,
   };
   return request(`${urlConfig.pcPay}`, reqParam);

 


免責聲明!

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



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