#鸿蒙通关秘籍#如何处理鸿蒙Web组件中的文件上传请求?

HarmonyOS
2024-12-13 11:44:49
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
时光笔SCM

在鸿蒙中,可以借助onShowFileSelector()接口处理来自前端的文件上传请求。开发者在应用侧需实现该接口以接收文件路径并将其回传到前端页面。具体实现方式如下:

bash import { webview } from '@kit.ArkWeb'; import { BusinessError } from '@kit.BasicServicesKit'; import { picker } from '@kit.CoreFileKit';

@Entry @Component struct WebComponent { controller: webview.WebviewController = new webview.WebviewController();

build() { Column() { Web({ src: $rawfile('local.html'), controller: this.controller }) .onShowFileSelector((event) => { const documentSelectOptions = new picker.DocumentSelectOptions(); let uri: string | null = null; const documentViewPicker = new picker.DocumentViewPicker(); documentViewPicker.select(documentSelectOptions).then((documentSelectResult) => { uri = documentSelectResult[0]; if (event) { event.result.handleFileList([uri]); } }).catch((err: BusinessError) => { console.error(Invoke documentViewPicker.select failed, code is ${err.code}, message is ${err.message}); }) return true; }) } } }

分享
微博
QQ
微信
回复
2024-12-13 12:49:52
相关问题
鸿蒙应用如何处理异步请求
577浏览 • 0回复 待解决
HarmonyOS 图片上传文件过大如何处理
380浏览 • 1回复 待解决