【发布时间】:2021-06-05 06:35:09
【问题描述】:
我正在尝试在我最新的 Flutter 项目 (https://pub.dev/packages/youtube_plyr_iframe) 中实现 Youtube Plyr IFrame 插件。一切正常,但我无法从网站源 (https://i3.ytimg.com/vi/TyimCGEkiUc/maxresdefault.jpg) 获取视频缩略图。我已将问题缩小到 Image.network 构造函数。我可以使用此小部件加载其他图像,但每当涉及到 YouTube 缩略图时,它都会给我这个错误:
════════ Exception caught by image resource service ════════════════════════════
The following ImageCodecException was thrown resolving an image codec:
Failed to load network image.
Image URL: https://i3.ytimg.com/vi/TyimCGEkiUc/maxresdefault.jpg
Trying to load an image from another domain? Find answers at:
https://flutter.dev/docs/development/platform-integration/web-images
When the exception was thrown, this was the stack
Image provider: NetworkImage("https://i3.ytimg.com/vi/TyimCGEkiUc/maxresdefault.jpg", scale: 1)
Image key: NetworkImage("https://i3.ytimg.com/vi/TyimCGEkiUc/maxresdefault.jpg", scale: 1)
════════════════════════════════════════════════════════════════════════════════
我不知道该怎么做。奇怪的是,Flutter 包中的示例页面运行良好,请参见此处 (https://jonatadashi.github.io/Web-Example/#/)。如果我的问题还不够令人沮丧,我将 Flutter.dev 上的 Interactive 示例弄乱了,将我的链接放入现有代码中,它完全可以正常工作 (https://flutter.dev/docs/cookbook/images/network-image)。 Youtube Plyr IFrame 包不需要任何 API,我可以在基本的 html 文件中成功提取图像。
我的代码:
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
body: Image.network(
'https://i3.ytimg.com/vi/TyimCGEkiUc/maxresdefault.jpg'),
),
);
}
}
这是一个适用于我的代码的图片网址:https://picsum.photos/250?image=9
【问题讨论】:
标签: image flutter dart web networking