全部產品
Search
文件中心

Drive and Photo Service:分享連結

更新時間:Dec 22, 2025

本篇主要介紹分享連結相關的介面。

說明

請求參數中的 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
  }
} */
)