# miscservices_request **Repository Path**: geekgaoxiang/miscservices_request ## Basic Information - **Project Name**: miscservices_request - **Description**: Request Sysystem Ability | 上传下载请求服务 - **Primary Language**: C++ - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 198 - **Created**: 2022-05-10 - **Last Updated**: 2022-05-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 杂散子系统/Request服务 ## 简介 ### 内容介绍 Request服务向三方应用提供系统下载/上传服务能力,以支撑应用开发者方便、高效地使用以及管理下载/上传业务的功能,包含新建、移除、暂停、恢复以及查询下载/上传任务。 ### 架构图介绍 **图 1** 下载子系统架构图  系统应用:依赖的系统应用如浏览器等。 三方应用:依赖的第三方应用如淘宝等。 Download API:提供下载功能的接口。 IDL:提供NAPI之间的相互通信。 下载服务:负责下载的具体过程,客户端发起一个下载请求,下载内部创建下载任务,处理下载请求并完成下载任务。 DataAbility能力:用来保存每一次下载的记录。 **图 2** 上传子系统架构图  扩展/三方 应用:上传功能的客户端,是上传的发起方。 JS接口:对外提供上传功能JS接口。 本地接口:对外提供上传功能本地接口。 上传任务:客户端每发起一个上传请求,上传内部都会创建一个上传任务,用于处理上传请求,转发服务器的上传应答。 Curl适配:对三方库libcurl的一个封装。 获取文件:根据客户端发起上传请求时传入的文件路径获取要上传的文件。 libcurl: 三方库。 DataAbility能力:DataAbility的使用方,用户获取DataAbility文件协议路径下的文件。 ## 目录 ``` /base/miscservices/request ├── figures # 架构图 ├── download/ability # 下载服务数据库管理模块 ├── download/etc # 下载服务包含的进程配置文件 ├── interfaces/kits/js/napi # 本组件对外提供的下载服务接口代码 │ └── download_single # 下载服务的napi接口 ├── download/sa_profile # 下载服务包含的系统服务的配置文件 ├── download/services # 下载系统服务实现 ├── download/utils # 下载服务包含日志打印和公共事件定义的常量 ├── upload/frameworks # 上传服务功能实现 ├── upload/interfaces/kits # 本组件对外提供的上传服务接口代码 │ ├── js # 本组件js接口定义 │ └── napi # 上传服务的napi接口 └── upload/unitest # 上传模块的单元测试 ``` ## 说明 ### 接口说明 **表 1** Request服务的主要接口
文件的本地存储路径。 支持“dataability”和“internal”两种协议类型,但“internal”仅支持临时目录,示例: dataability:///com.domainname.dataability.persondata/person/10/file.txt internal://cache/path/to/file.txt |
||