Flutter 无法使用 http.get() 从 dart:html 中的某些 URL 下载图像

问题描述 投票:0回答:0

我正在尝试使用

http.get
dart:html 从 URL 下载 png 图像。 他是我的代码:

import 'package:image/image.dart' as img;
import 'package:http/http.dart' as http;
import 'dart:typed_data';

Future<img.Image?> downloadImage(String url) async {
    final response = await http.get(Uri.parse(url)); //<- 
    print(response.statusCode);
    final Uint8List imageData = response.bodyBytes;
    return img.decodeImage(imageData);
}

我终止了以下行为: 我在 https://i.imgur.com/removed.png 上调用函数 它工作得很好 但我打算从 DALL E 下载图像,例如https://oaidalleapiprodscus.blob.core.windows.net/private/org-1uF6l2WspibQpqLpEP1eIRWb/user-YlD1OyJ7TEMyLCdzm6n8qbB8/img-ZJri3TwsZuKfQzNbbULDyoZV.png?st=-2023-01 %3A12%3A15Z&se=2023-02-22T23%3A12%3A15Z&sp=r&sv=2021-08-06&sr=b&rscd=inline&rsct=image/png&skoid=6aaadede-4fb3-4698-a8f6-684d7786b067&sktid=a48cca56-e6da-484e-a814-9c849652bcb3&skt =2023-02-22T21%3A28%3A02Z&ske=2023-02-23T21%3A28%3A02Z&sks=b&skv=2021-08-06&sig=o1ndI2fWdHZY/xnIYUeUZkKxWQHdeMUkN91T03R8PtQ%3D

 在这种情况下,打印语句永远是
未达到我也没有错误。我用不同的 like 多次尝试并等待至少 10 分钟 - 没有结果或错误。

我在 macOS 13.2.1 上使用 Flutter 3.7.4 使用 http: ^0.13.5 和 http_client: ^1.5.1 我在预览 als 以及在 Crome 和 Safari 上构建时在 Crome 上解决了这个问题 我正在使用

http.get()
作为运行和构建参数

我的请求做错了什么? 有没有更好的方法来为网络应用程序获取 img.Image 图像?

我尝试使用

--web-renderer html
在终端中下载图像。这很好用。 使用
curl https://oaidalleapiprodscus.blob.c... > test.png
代替
http.readBytes
也会导致相同的行为。 我也无法从其他 URL 加载图像,例如 https://cdn.discordapp.com/attachments/797766271542362132/1078073353472061460/test02.png 使用
http.get
中的 URL 适用于所有 URL。

我也尝试使用 http_client 在这种情况下我无法下载任何图像。

Image.network(url);
flutter dart http http-get dart-html
© www.soinside.com 2019 - 2024. All rights reserved.