dcloudio / dcloudio/native-docs

uni.downloadFile对于某些可访问url会下载失败

Abierto
#116 0 comentarios 0 reacciones 1 asignado Reclamado por @zmobs Ver en GitHub
Lenguaje dominante
Sin datos de lenguaje
Estrellas
88
Forks
75
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

**问题描述**
`uni.downloadFile`在下载某些url时会下载失败,此url是可正常访问的。

如:
```
https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fnimg.ws.126.net%2F%3Furl%3Dhttp%253A%252F%252Fdingyue.ws.126.net%252F2021%252F0825%252F3ffc70abj00qydrsr000vd000ju009pp.jpg%26thumbnail%3D650x2147483647%26quality%3D80%26type%3Djpg&refer=http%3A%2F%2Fnimg.ws.126.net&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1644072213&t=e8b75081be86cd0a1111616e9edbed06
```

下载结果会调用`success`,但拿到的`res`的`statusCode`是`400`。
如下:
```
{
errMsg: "downloadFile:ok",
statusCode: 400,
tempFilePath: "_doc/uniapp_temp_1641480749280/download/src=http%3A%2F%2Fnimg.ws.126.net%2F%3Furl%3Dhttp%253A%252F%252Fdingyue.ws.126.net%252F2021%252F0825%252F3ffc70abj00qydrsr000vd000ju009pp.jpg%26thumbnail%3D650x2147483647%26quality%3D80%26type%3Djpg&refer=http%3A%2F%2Fnimg.ws.126.net&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg"
}

```

看堆栈在底层的`plus.downloader`就`downloadedSize`为**0**。
```
{
downloadedSize: 0,
filename: "_doc/uniapp_temp_1641480749280/download/src=http%3A%2F%2Fnimg.ws.126.net%2F%3Furl%3Dhttp%253A%252F%252Fdingyue.ws.126.net%252F2021%252F0825%252F3ffc70abj00qydrsr000vd000ju009pp.jpg%26thumbnail%3D650x2147483647%26quality%3D80%26type%3Djpg&refer=http%3A%2F%2Fnimg.ws.126.net&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg"
headers: {Server: "JSP3/2.0.14", Date: "Thu, 06 Jan 2022 14:54:34 GMT", Content-Type: "image/jpeg", Content-Length: "24724", Connection: "keep-alive", …},
state: 4,
status: 400,
totalSize: 24724,
uuid: "dt671641480873633"
}
```

iOS可正常下载,估计是android的`plus.downloader`实现bug。

**预期结果**
可以正常下载

**系统信息:**
- 发行平台: 5+ App
- 操作系统: Android 7.0
- HBuilderX版本: 3.2.16
- uni-app版本: 3.2.16
- 设备信息: 红米note5

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.