选择文件
使用三方库 file_picker 进行文件选择
```
FilePickerResult? result = await FilePicker.platform.pickFiles();
if (result != null) {
return {
"files": result.files.map((file) {
return {"name": file.name, "data": file.bytes};
}).toList()
};
}
```
得到文件名称和文件数据(数据格式:Uint8List)
上传文件
var partFile = MultipartFile.fromBytes(fileData, filename: 'test.xlsx');
FormData data = FormData.fromMap(
{"file": partFile});
Response result = await post('/uploadAPI',
data: data, options: Options(contentType: 'multipart/form-data'),
onSendProgress: (int size, int currentSize) {
print('size:$size currentSize:$currentSize');
});
注意:
- fileData 类型为Uint8List
- 要设置contentType: 'multipart/form-data'