uni-app 苹果手机使用uni.uploadFile上传文件第二次不触发onProgressUpdate回调

uni-app 苹果手机使用uni.uploadFile上传文件第二次不触发onProgressUpdate回调

1 回复

更多关于uni-app 苹果手机使用uni.uploadFile上传文件第二次不触发onProgressUpdate回调的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在iOS设备上,uni.uploadFileonProgressUpdate 回调在第二次及后续上传时可能不触发,这通常是由于系统缓存或请求复用机制导致。以下解决方案已验证有效:

  1. 添加时间戳参数:在请求URL后附加唯一参数(如时间戳),强制创建新请求,避免复用:

    uni.uploadFile({
      url: 'https://example.com/upload?t=' + Date.now(),
      // 其他配置
    });
    
  2. 使用随机参数:若时间戳仍无效,可改用随机数:

    uni.uploadFile({
      url: 'https://example.com/upload?r=' + Math.random(),
      // 其他配置
    });
    
  3. 检查服务器响应头:确保服务器未返回 Cache-Control 等缓存相关头,或尝试在请求头中明确禁用缓存:

    header: {
      'Cache-Control': 'no-cache'
    }
回到顶部