flutter 上传文件实现
时间: 2023-10-17 16:06:35 浏览: 116
Flutter中上传文件可以通过Dio库实现。以下是一个简单的示例:
```dart
import 'dart:io';
import 'package:dio/dio.dart';
void uploadFile(File file) async {
String fileName = file.path.split('/').last;
FormData formData = new FormData.fromMap({
"file": await MultipartFile.fromFile(file.path, filename: fileName),
});
try {
Response response = await Dio().post("http://example.com/upload", data: formData);
print(response.data);
} catch (e) {
print(e);
}
}
```
在上面的代码中,我们使用Dio库创建一个FormData对象,将文件添加到其中,并将其发送到服务器。在这个例子中,我们假设文件是本地存储的,因此我们需要获取文件名,并使用MultipartFile将其添加到FormData中。最后,我们使用Dio.post()方法将FormData发送到服务器。
请注意,为了使用Dio库,您需要将其添加到您的Flutter项目中。您可以通过在您的pubspec.yaml文件中添加以下行来实现:
```
dependencies:
dio: ^3.0.0
```
这将允许您在您的项目中导入并使用Dio库。
阅读全文