PikpakApi
类提供了一组用于与 Pikpak API 交互的方法,例如登录、获取文件列表、上传文件等。
使用用户名和密码登录 Pikpak。
getUserInfo(): { username: string | undefined; userId: string | undefined; accessToken: string | undefined; refreshToken: string | undefined; encodedToken: string | undefined }
获取用户信息。
返回值:
一个包含以下属性的对象:
username
: Pikpak 用户名。userId
: Pikpak 用户 ID。accessToken
: Pikpak 访问令牌。refreshToken
: Pikpak 刷新令牌。encodedToken
: 已编码的包含访问令牌和刷新令牌的令牌字符串。
初始化验证码,为登录做准备。
- 返回值:
Promise<any>
- 包含初始化结果的 Promise
创建一个新的文件夹。
- 参数:
name
:string
(可选) - 文件夹名称,默认为 "新建文件夹"。parentId
:string
(可选) - 父文件夹 ID,默认为根目录。
- 返回值:
Promise<any>
- 包含创建结果的 Promise。
将文件或文件夹移动到回收站。
- 参数:
ids
:string[]
- 要移动到回收站的文件或文件夹 ID 列表。
- 返回值:
Promise<any>
- 包含操作结果的 Promise。
将文件或文件夹移出回收站。
- 参数:
ids
:string[]
- 要移出回收站的文件或文件夹 ID 列表。
- 返回值:
Promise<any>
- 包含操作结果的 Promise。
永久删除文件或文件夹。
- 参数:
ids
:string[]
- 要永久删除的文件或文件夹 ID 列表。
- 返回值:
Promise<any>
- 包含操作结果的 Promise。
离线下载文件。
- 参数:
fileUrl
:string
- 文件链接。parentId
:string
(可选) - 父文件夹 ID,不传默认存储到 My Pack。name
:string
(可选) - 文件名,不传默认为文件链接的文件名。
- 返回值:
Promise<any>
- 包含操作结果的 Promise。
获取离线下载列表。
- 参数:
size
:number
(可选) - 每次请求的数量,默认为 10000。nextPageToken
:string
(可选) - 下一页的 page token。phase
:string[]
(可选) - 离线下载任务状态,默认为["PHASE_TYPE_RUNNING", "PHASE_TYPE_ERROR"]
。- 支持的值:
PHASE_TYPE_RUNNING
,PHASE_TYPE_ERROR
,PHASE_TYPE_COMPLETE
,PHASE_TYPE_PENDING
- 支持的值:
- 返回值:
Promise<any>
- 包含操作结果的 Promise。
获取离线下载任务状态。
- 参数:
taskId
:string
- 离线下载任务 ID。fileId
:string
- 离线下载文件 ID。
- 返回值:
Promise<DownloadStatus>
- 表示下载状态的 Promise。
获取离线下载文件信息。
- 参数:
fileId
:string
- 离线下载文件 ID。
- 返回值:
Promise<any>
- 包含操作结果的 Promise。
fileList(size?: number, parentId?: string, nextPageToken?: string, additionalFilters?: Record<string, any>): Promise<FileList>
获取文件列表。
- 参数:
size
:number
(可选) - 每次请求的数量,默认为 所有。parentId
:string
(可选) - 父文件夹 ID,默认为 根目录。nextPageToken
:string
(可选) - 下一页的分页令牌。additionalFilters
:Record<string, any>
(可选) - 额外的过滤条件。
- 返回值:
Promise<FileList>
- 包含文件列表的 Promise。
获取最近添加事件列表。
- 参数:
size
:number
(可选) - 每次请求的数量,默认为 100,设置为 0 则请求所有。nextPageToken
:string
(可选) - 下一页的 page token。
- 返回值:
Promise<any>
- 包含操作结果的 Promise。
重试离线下载任务。
- 参数:
taskId
:string
- 离线下载任务 ID。
- 返回值:
Promise<any>
- 包含操作结果的 Promise。
- 异常:
PikpakException
- 重试离线下载任务失败时抛出异常。
根据任务 ID 删除任务。
- 参数:
taskIds
:string[]
- 要删除的任务 ID 列表。deleteFiles
:boolean
(可选) - 是否同时删除文件,默认为false
。
- 返回值:
Promise<void>
- 表示操作完成的 Promise。
- 异常:
PikpakException
- 删除任务失败时抛出异常。
将形如 /path/a/b
的路径转换为 文件夹的id。
- 参数:
path
:string
- 路径字符串。create
:boolean
(可选) - 是否创建不存在的文件夹。
- 返回值:
Promise<FileRecord[]>
- 文件夹 ID 列表。
批量移动文件。
- 参数:
ids
:string[]
- 文件 ID 列表。toParentId
:string
(可选) - 目标文件夹 ID,默认为根目录。
- 返回值:
Promise<Record<string, any>>
- API 响应数据。
批量复制文件。
- 参数:
ids
:string[]
- 文件 ID 列表。toParentId
:string
(可选) - 目标文件夹 ID,默认为根目录。
- 返回值:
Promise<Record<string, any>>
- Pikpak API 返回的结果。
fileMoveOrCopyByPath(fromPaths: string[], toPath: string, move?: boolean, create?: boolean): Promise<any>
根据路径移动或复制文件。
- 参数:
fromPaths
:string[]
- 要移动或复制的文件路径列表。toPath
:string
- 移动或复制到的路径。move
:boolean
(可选) - 是否移动,默认为复制。create
:boolean
(可选) - 是否创建不存在的文件夹,默认为false
。
- 返回值:
Promise<any>
- Pikpak API 返回的结果。
获取文件的下载链接。
- 参数:
fileId
:string
- 文件 ID。
- 返回值:
-
Promise<any>
- 包含文件详细信息的对象。- 使用
medias[0].link.url
在流媒体服务或工具中以高速流式传输。 - 使用
web_content_link
下载文件。
- 使用
-
重命名文件。
- 参数:
id
:string
- 文件 ID。newFileName
:string
- 新的文件名。
- 返回值:
Promise<any>
- 更新后的文件信息。
批量给文件加星标。
- 参数:
ids
:string[]
- 文件 ID 列表。
- 返回值:
Promise<any>
- Pikpak API 返回的结果。
批量取消文件星标。
- 参数:
ids
:string[]
- 文件 ID 列表。
- 返回值:
Promise<any>
- Pikpak API 返回的结果。
获取已加星标的文件列表。
- 参数:
size
:number
(可选) - 每次请求的数量,默认为 100。nextPageToken
:string
(可选) - 下一页的分页令牌,用于获取更多结果。
- 返回值:
Promise<any>
- Pikpak API 返回的结果,包含已加星标的文件列表。
批量分享文件。
- 参数:
ids
:string[]
- 文件 ID 列表。needPassword
:boolean
(可选) - 是否需要分享密码,默认为false
。expirationDays
:number
(可选) - 分享链接的有效天数,默认为-1
(永久有效)。
- 返回值:
Promise<any>
- Pikpak API 返回的结果,包含分享链接信息。
获取当前用户的空间配额信息。
- 返回值:
Promise<any>
- Pikpak API 返回的结果,包含空间配额信息。
获取邀请码。
- 返回值:
Promise<string>
- Pikpak API 返回的结果,包含邀请码。
获取 VIP 信息。
- 返回值:
Promise<any>
- Pikpak API 返回的结果,包含 VIP 信息。
获取传输配额信息。
- 返回值:
Promise<any>
- Pikpak API 返回的结果,包含传输配额信息。