0 multipartform-data dart flutter dio
我正在尝试将来自 Flutter 上的多图像选择器插件的多个文件发送到我的服务器,为此我尝试使用 Dio 来发送它。但多部分标签也不会上传文件。如何进行?
Future<Response> _uploadFile() async {
var catUpload = jsonEncode(incluirCategoriasParaUpload());
final FormData formData = FormData.fromMap({
"action": 'add_Anuncio',
"filial_id": "1",
"titulo": tituloControler.text,
"descricao": descricaoControler.text,
"categorias": catUpload
});
for (var val in listaImagensParaUpload) {
ByteData byteData = await val.getByteData();
Uint8List pngBytes = byteData.buffer.asUint8List();
formData.files.add(
MapEntry("arquivos",
await MultipartFile.fromBytes(pngBytes, filename: "teste")
)
);
}
Dio dio = new Dio();
dio.interceptors.add(alice.getDioInterceptor());
return await dio
.post(URL_WS + WS_PAGE,
data: formData,
options: Options(method: 'POST', responseType: ResponseType.json))
.timeout(Duration(seconds: 2000));
// .catchError(dioError);
}
Run Code Online (Sandbox Code Playgroud)
小智 5
您必须将此 for 循环声明为 toList()。
这是一个如何制作的示例。
formData = FormData.fromMap({
'id': '1',
'title': 'myTitle',
'files': [
for (var file in listFiles)
{await MultipartFile.fromFile(item.path, filename: 'fileName')}
.toList()
]
});
Run Code Online (Sandbox Code Playgroud)
我正在使用 Dio 库与 MultiPartFile 一起工作。
| 归档时间: |
|
| 查看次数: |
2725 次 |
| 最近记录: |