如何在Flutter Web中为上传服务器选择文件?

时间:2019-10-28 07:47:28

标签: flutter flutter-web dio

我想从计算机中选择一个文件作为上传服务器,但我不知道该怎么办?

1 个答案:

答案 0 :(得分:0)

我已经写了一个详细的答案here,有关访问文件并读取其内容。这对您来说可能是一个好的开始。

简而言之

  1. 像这样从FileUploadInputElement包创建一个dart:htmlFileUploadInputElement element = FileUploadInputElement()..id = "file_input";
  2. 使用dart:ui的{​​{1}}方法注册您的元素。
platformViewRegistry.registerViewFactory
  1. 使用ui.platformViewRegistry.registerViewFactory("add_input", (int viewId) { return element; }); 小部件将此元素附加到您的网络应用布局。

HTMLElementView

  1. 使用HtmlElementView(viewType: 'add_input')来读取通过FileReader可用的文件,如下所示。

FileUploadInputElement.files

  1. 如有必要,处理fileReader.readAsArrayBuffer(element.files[0]);onLoad事件。

  2. 单击上传按钮后,处理onError数组以访问文件并将其上传到服务器。