[英]Dropbox Java API - File owner emails
Dropbox
的Java
API通過類似的方法返回文件所有者名稱的列表
public List<String> getOwners(DbxClientV2 client, String fileId) {
SharedFileMetadata metadata = client.sharing().getFileMetadata();
return metadata.getOwnerDisplayNames();
}
有沒有辦法獲取電子郵件地址?
根據Dropbox v2文檔,它具有終結點- /get_file_metadata
。
curl
請求示例:
curl -X POST https://api.dropboxapi.com/2/sharing/get_file_metadata \
--header "Authorization: Bearer <access token> " \
--header "Content-Type: application/json" \
--data "{\"file\": \"id:3kmLmQFnf1AAAAAAAAAAAw\",\"actions\": []}"
參數:
{
"file": "id:3kmLmQFnf1AAAAAAAAAAAw",
"actions": []
}
返回:
{
"id": "id:3kmLmQFnf1AAAAAAAAAAAw",
"name": "file.txt",
"policy": {
"acl_update_policy": {
".tag": "owner"
},
"shared_link_policy": {
".tag": "anyone"
},
"member_policy": {
".tag": "anyone"
},
"resolved_member_policy": {
".tag": "team"
}
},
"preview_url": "https://www.dropbox.com/scl/fi/fir9vjelf",
"access_type": {
".tag": "viewer"
},
"owner_display_names": [
"Jane Doe"
],
"owner_team": {
"id": "dbtid:AAFdgehTzw7WlXhZJsbGCLePe8RvQGYDr-I",
"name": "Acme, Inc."
},
"path_display": "/dir/file.txt",
"path_lower": "/dir/file.txt",
"permissions": [],
"time_invited": "2016-01-20T00:00:00Z"
}
owner_display_names
List of (String)?
擁有文件的用戶的顯示名稱。 如果該文件是團隊文件夾的一部分,則還包括團隊管理員的顯示名稱。 如果無法獲取所有者的顯示名稱,則不存在。 該字段是可選的。
因此,沒有根據文件顯示有關用戶電子郵件的信息。
要使用Dropbox Java SDK獲取有關共享文件成員的信息,應使用listFileMembers
*方法。 根據您的用例和所需的批處理/分頁方法,您可以選擇幾個版本:
獲取所有者的一種方法是通過協作元數據:
public List<String> getOwners(DbxClientV2 client, String fileId) {
SharedFileMetadata metadata = client.sharing().getFileMetadata();
List<UserFileMembershipInfo> users = metadata.getUsers();
List<String> owners = new ArrayList<>();
for (UserFileMembershipInfo user : users)
if (user.getAccessType() == AccessLevel.OWNER) {
owners.add(info.getUser().getDisplayName());
}
return owners;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.