我不知道这个标题是否完全合适,但这是我真正想做的.我有指向mp3文件的URL,现在有些是有效的,有些是无效的,所以在我的UI中呈现用于播放这些音频文件的控件之前,我想判断一下URL是否会给我mp3或结果是404.我怎么才能做到这一点呢?

推荐答案

发出HTTP请求并判断响应代码

final response =
  await http.get('https://jsonplaceholder.typicode.com/posts/1');

if (response.statusCode == 200) {

有关更多详细信息,请参见https://flutter.io/docs/cookbook/networking/fetch-data.

不过,当您只想判断URL是否有效时,HEAD个请求会更有效,因为它实际上并不下载内容.

final response =
  await http.head('https://jsonplaceholder.typicode.com/posts/1');

if (response.statusCode == 200) {

另见https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/HEAD

Dart相关问答推荐

我不明白在DART的`if()`语句中使用`case

有没有办法否定IF条件中的模式大小写匹配?

dart run edge build cloudflare_workers --dev 命令在我的项目(笔记本电脑)中不起作用

切换到可靠的零安全后简单分配中的可空性不匹配

Dart 中的静态构造函数

如何在 Dart 中实现继承?

Dart:使用正则表达式从字符串中删除空格

日期时间时区反序列化

Flutter.io (dart) - 如何创建左填充覆盖?

如何实现 Iterable

Flutter:Firebase FieldValue.serverTimestamp() 到 DateTime 对象

如何使用Flutter在按钮网格中滑动(swipe)/拖动(drag) 2 个或更多按钮

在小部件之间画一条线

如何在Flatter中zoom 两个谷歌 map 标记

如何在命令行上创建和运行Dart元素

如何导入文件夹中的所有文件?

Dart 中 Promise.all 的类比?

dart中是否有类似struct struct 的东西?

Dart vs Polymer vs Bootstrap

如何在 Dart 中扁平化map列表?