HarmonyOS 鸿蒙Next下载公司链接失败

发布于 1周前 作者 vueper 来自 鸿蒙OS

HarmonyOS 鸿蒙Next下载公司链接失败

request.downloadFile方法下载不了,但是网页打开可以下载

https://mmapp.chinatelecom.cn:8443/sbms_cloud_test/download/%E9%9B%86%E4%B8%AD%E7%89%A1%E6%B5%81%E7%AE%A1%E7%90%86APP%E6%93%8D%E4%BD%9C%E6%89%8B%E5%86%8C-Android%E7%89%88.docx
4 回复

这边试了是TLS 握手阶段报SSLalertnumber40,需要确认链接对应的服务端使用的加密套件是什么,如果是使用的不安全的加密套件。这边应该是不支持的,比如GCM是安全的,CBC是不安全的。

更多关于HarmonyOS 鸿蒙Next下载公司链接失败的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


如果想用不安全的加密套件,还可以使用 ohos.net.http 的接口,这种是支持不安全的密码套件的。https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-http-V5

下面的Demo,可以下载下来PDF,但是下不下来你的docx文件,所以得麻烦提供下你的服务端支持了哪些密码套:

import { common } from '@kit.AbilityKit';
import { request } from '@kit.BasicServicesKit';
import { BusinessError } from '@kit.BasicServicesKit';

@Entry
@Component
export struct Index{
  build(){
    Column(){
      SaveButton()
        .onClick(()=>{
          this.downloadFile();
        })
    }.width("100%")
    .height("100%")
  }

  downloadFile(){
    let context = getContext(this) as common.UIAbilityContext;
    let filesDir = context.cacheDir;
    let url = 'https://gitee.com/harmonyos-cases/cases/raw/master/CommonAppDevelopment/feature/webpdfviewer/src/main/resources/rawfile/sample.pdf';
    //let url='https://mmapp.chinatelecom.cn:8443/sbms_cloud_test/download/%E9%9B%86%E4%B8%AD%E7%89%A1%E6%B5%81%E7%AE%A1%E7%90%86APP%E6%93%8D%E4%BD%9C%E6%89%8B%E5%86%8C-Android%E7%89%88.docx';
    try {
      let encodedUrl = url
      let times=new Date();
      let name=times.getTime();
      request.downloadFile(context, {
        url: encodedUrl,
        filePath: filesDir + '/' + `${name}.pdf`,
      }).then((downloadTask: request.DownloadTask) => {
        downloadTask.on('complete', () => {
          console.info('download complete');
        })
        downloadTask.on('fail', (code) => {
          console.info(`download fail: ${code}` + " || " + code.toString());
        })
      }).catch((err: BusinessError) => {
        console.error(`Invoke download Task failed, code is ${err.code}, message is ${err.message}`);
      });
    } catch (error) {
      let err: BusinessError = error as BusinessError;
      console.error(`Invoke downloadFile failed, code is ${err.code}, message is ${err.message}`);
    }
  }
}

针对“HarmonyOS 鸿蒙Next下载公司链接失败”的问题,可能的原因及解决方法如下:

  1. 网络问题:首先检查网络连接是否稳定,尝试切换至其他网络环境(如从Wi-Fi切换至移动数据)进行下载,看是否能解决问题。

  2. 链接失效:下载链接可能已过期或存在错误。请确认你使用的链接是从官方或可靠来源获取的最新版本链接。

  3. 服务器负载:如果服务器正在经历高负载,可能会导致下载链接响应缓慢或失败。可以尝试在非高峰时段进行下载。

  4. 设备兼容性:确保你的设备支持HarmonyOS鸿蒙Next版本,并且已满足所有必要的系统更新要求。

  5. 安全设置:检查你的设备或浏览器安全设置,确保没有阻止来自鸿蒙官方网站的下载。

  6. 清除缓存:尝试清除浏览器或下载工具的缓存,然后重新访问下载链接。

如果以上方法均未能解决问题,可能是更复杂的系统或服务器问题。此时,建议直接访问鸿蒙官方网站,查找相关的技术支持文档或公告,了解是否有其他用户遇到类似问题以及官方提供的解决方案。如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部