dcloudio / dcloudio/native-docs

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

オープン
#116 コメント 0 件 リアクション 0 件 担当者 1 名 @zmobs が担当を希望しています GitHub で見る
主要言語
言語のデータがありません
スター
88
フォーク
75
PR マージ指標
30日以内にマージされた PR はありません

説明

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

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。