文档

分享链接

更新时间:

本篇主要介绍分享链接相关的接口。

说明

请求参数中的 options: IPDSRequestConfig 基于 axios 的 request config 封装,详情请看:AxiosRequestConfig

createShareLink 方法

创建分享链接

const result = await client.createShareLink(params, options)

举例

await client.createShareLink({
  description: 'test',
  drive_id: '1060',
  expiration: '2021-12-08T15:59:59.999Z',
  file_id_list: ['61a49e39d687d40967164cf98ef65ab5bb554f53'],
  share_pwd: '831956',
})

参数说明

字段

类型

必选

说明

params

ICreateShareLinReq

创建分享参数

options

IPDSRequestConfig

其他配置项

ICreateShareLinReq

字段

类型

必选

说明

description

string

描述信息

drive_id

string

云盘ID

share_pwd

string

提取码,0-64个字符。长度0表示没有提取码

file_id_list

string[]

(标准模式才有效)。一组文件或者文件加的列表,上限:100

file_path_list

string[]

(托管模式下有效)与 file_id_list 之间只需传一个

expiration

string

失效时间点。RFC3339格式

比如:"2020-06-28T11:33:00.000+08:00"

永久有效:""

返回

字段

类型

必选

说明

result

IShareLinkItem

分享链接详情

cancelShareLink 方法

取消分享

await client.cancelShareLink(params, options)

举例

await client.cancelShareLink({
  share_id: 'YgHgBeXGZWr'
})

参数说明

字段

类型

必选

说明

params

Object

取消分享参数

options

IPDSRequestConfig

其他配置项

params

字段

类型

必选

说明

share_id

string

分享id

返回

listShareLinks 方法

列举分享

const result = await client.listShareLinks(params, options)

举例

const {items=[], next_marker} = await client.listShareLinks({
  creator: 'user_id',
  marker: '',
  limit: 100,
})

参数说明

字段

类型

必选

说明

params

Object

列举分享参数

options

IPDSRequestConfig

其他配置项

params

字段

类型

必选

说明

limit

number

返回数据最大条数,范围:[1-100],默认:100

marker

string

查询起始标识

creator

string

一 、管理员:

1.1 不传,查所有用户

1.2 传指定user_id,查指定用户的分享。

二、普通用户:

2.1 不传,查自己

2.2 传指定user_id,只能是自己,否则报403

返回

字段

类型

必选

说明

result

IListRes<IShareLinkItem>

结果

IListRes

字段

类型

必选

说明

items

IShareLinkItem[]

IShareLinkItem数组

next_marker

string

查询下一页的起始标识

IShareLinkItem

字段

类型

说明

share_id

string

分享码

share_pwd

string

提取码。如果没有传递,那么这里返回空串,表示不需要提取码

share_msg

string

分享口令

share_url

string

分享URL地址

share_policy

'url' | 'msg'

分享策略

url: 使用链接进行分享

msg: 使用口令进行分享

description

string

描述

share_name

string

分享名称

download_count

number

下载次数

preview_count

number

查看次数

save_count

number

保存次数

drive_id

string

云盘ID

share_pwd

string

提取码,0-64个字符。长度0表示没有提取码

file_id_list

string[]

标准模式返回此字段

file_path_list

string[]

托管模式返回此字段

expiration

Date

失效时间点。RFC3339格式

比如:"2020-06-28T11:33:00.000+08:00"

永久有效:""

expired

boolean

是否过期

status

'enabled' | 'disabled'

分享状态

creator

string

创建者id

created_at

string

创建时间

updated_at

string

更新时间

getShareLinkByAnonymous 方法

匿名(无需token)获取分享信息。

const result = await client.getShareLinkByAnonymous(params, options)

举例

const domain_id = '您的domainID'
const client = new PDSClient({
  api_endpoint: `https://${domain_id}.api.aliyunpds.com`
})
let info = client.getShareLinkByAnonymous({
  share_id: 'xxxxxx'
})

参数说明

字段

类型

必选

说明

params

Object

参数

options

IPDSRequestConfig

其他配置项

params

字段

类型

必选

说明

share_id

string

分享ID

返回

字段

类型

必选

说明

result

IAnonymousShareLinkItem

结果

IAnonymousShareLinkItem

字段

类型

必选

说明

avatar

string

分享者头像

creator_id

string

创建者用户ID

creator_name

string

创建者用户昵称

creator_phone

string

创建者手机号

disable_download

boolean

禁止下载

disable_preview

boolean

禁止预览

disable_save

boolean

禁止保存

enable_upload

boolean

允许上传

expiration

Date

过期时间

preview_limit

number

预览次数限制

require_login

boolean

需要登录才能查看

save_download_limit

number

保存或下载次数限制

share_name

string

分享链接名称

updated_at

string

最后修改时间

getShareToken 方法

匿名(无需token)获取分享Token。

说明

什么是分享token (share_token)?

分享 token 是一种临时token,可以替代 access_token 调用某些API,比如 listFiles,从而实现用户未登录时访问分享页面内容的功能。

const result = await client.getShareToken(params, options)

举例

const domain_id = '您的domainID'
const client = new PDSClient({
  api_endpoint: `https://${domain_id}.api.aliyunpds.com`
})

try {
 
  let info = client.getShareToken({
    share_id: 'xxxxxx',
    // share_pwd: '提取码' // 如果有,请输入提取码
  })

}catch(e){
  // 如果需要提取码,但是上面没有传入,会报错
  if (e.code == 'InvalidResource.SharePwd'){
    // 需要提取码。
  }
}

参数说明

字段

类型

必选

说明

params

Object

参数

options

IPDSRequestConfig

其他配置项

params

字段

类型

必选

说明

share_id

string

分享ID

share_pwd

string

提取码

返回

字段

类型

必选

说明

result

IShareToken

结果

IShareToken

字段

类型

必选

说明

share_token

string

分享Token

expire_time

string

过期时间

expires_in

string

有效期,单位秒

使用分享Token举例

获取分享文件列表。

const share_token = '得到的分享Token'
const share_id = '您的分享ID'
const domain_id = '您的domainID'

const client = new PDSClient({
  api_endpoint: `https://${domain_id}.api.aliyunpds.com`,
  share_token,
})

let {items=[], next_marker} = client.listFiles({ 
  share_id, 
  parent_file_id: 'root'
},
/*
{
  headers: {
    'x-share-token': share_token
  }
} */
)