本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
列出用户文档
以下示例列出用户的文档。选择 Copy
将代码保存在本地,或参阅本主题末尾的完整示例的链接。
-
需要适用于 Ruby 的 Amazon SDK 模块。
-
创建一个助手方法来获取用户的根文件夹。
-
创建 Amazon WorkDocs 客户端。
-
获取该用户的根文件夹。
5. 调用 describe_folder_contents
以按升序获取文件夹的内容。
6. 显示用户的根文件夹中的每个文档的名称、大小(以字节为单位)、上次修改日期、文档 ID 和版本 ID。
# Copyright 2010-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. # # This file is licensed under the Apache License, Version 2.0 (the "License"). # You may not use this file except in compliance with the License. A copy of the # License is located at # # http://aws.amazon.com/apache2.0/ # # This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS # OF ANY KIND, either express or implied. See the License for the specific # language governing permissions and limitations under the License. require 'aws-sdk-workdocs' # v2: require 'aws-sdk' def get_user_folder(client, orgId, user_email) root_folder = '' resp = client.describe_users({ organization_id: orgId, }) # resp.users should have only one entry resp.users.each do |user| if user.email_address == user_email root_folder = user.root_folder_id end end return root_folder end client = Aws::WorkDocs::Client.new(region: 'us-west-2') # Set to the email address of a user user_email = 'someone@somewhere' # Set to the OrganizationId of your WorkDocs site. orgId = 'd-123456789c' user_folder = get_user_folder(client, orgId, user_email) if user_folder == '' puts 'Could not get root folder for user with email address ' + user_email exit(1) end resp = client.describe_folder_contents({ folder_id: user_folder, # required sort: "NAME", # accepts DATE, NAME order: "ASCENDING", # accepts ASCENDING, DESCENDING }) resp.documents.each do |doc| md = doc.latest_version_metadata puts "Name: #{md.name}" puts "Size (bytes): #{md.size}" puts "Last modified: #{doc.modified_timestamp}" puts "Doc ID: #{doc.id}" puts "Version ID: #{md.id}" puts end
请参阅上的完整示例