dcloudio / dcloudio/native-docs

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

Aperta
#116 0 commenti 0 reazioni 1 assegnatario Rivendicata da @zmobs Vedi su GitHub
Lingua principale
Nessun dato sulla lingua
Stelle
88
Fork
75
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

**问题描述**
`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

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.