欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > 鸿蒙Next网络请求~上传文件pdf

鸿蒙Next网络请求~上传文件pdf

2025/3/9 21:29:14 来源:https://blog.csdn.net/m0_51282960/article/details/146073849  浏览:    关键词:鸿蒙Next网络请求~上传文件pdf

使用场景,通过文档扫描生成pdf后,进行axios上传文件FormData。文档扫描生成文件路径为沙箱路径:file://com.huawei.hmsapp.hiai/data/storage/el2/base/haps/doc/files/com.aa.hms/DocumentScanner_1741249445097.pdf

主要代码:`

			//复制               fs.open(filePathString?.content, (err, file) => {if (err) {console.error("file open failed with error message: " + err.message + ", error code: " + err.code);} else {//文件名let filename = `${new Date().getTime()}.${'pdf'}`//获取上下文,我在工具类里面let filepath = AppUtil.getContext().cacheDir + '//' + filenameLogUtil.debug('测试filename is:' + filename + ', file path is:' + filepath)fs.copyFile(file.fd, filepath, async () => {//根据axios文档//上传类型支持uri和ArrayBuffer,uri支持“internal”协议类型和沙箱路径。"internal://cache/"为必填字段,示例: internal://cache/path/to/file.txt;沙箱路径示例:cacheDir + '/hello.txt'let internalUri = `internal://cache/${filename}`;LogUtil.debug('测试internal uri is:' + internalUri)let formData = new FormData()formData.append('file', internalUri)let uploadUrl = 'https://baidu.com'// 发送请求axios.post<string, AxiosResponse<string>, FormData>(uploadUrl,formData, {headers: { 'Content-Type': 'multipart/form-data' },context: getContext(AppUtil.getContext()),onUploadProgress: (progressEvent: AxiosProgressEvent): void => {console.info('测试' + progressEvent && progressEvent.loaded && progressEvent.total ?Math.ceil(progressEvent.loaded / progressEvent.total * 100) + '%' : '0%');},}).then((res: AxiosResponse) => {const cameraAndFileScanBean =JSONUtil.jsonToBean(CameraAndFileScanBean, JSON.stringify(res.data))resolve(cameraAndFileScanWebResultBean);}).catch((error: AxiosError) => {console.error("测试error:" + JSON.stringify(error));})})}})

`

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词