Чтобы перечислить все элементы в DigitalOcean Spaces, вы можете использовать API DigitalOcean Spaces. Вот несколько методов, которые вы можете использовать вместе с примерами кода, чтобы добиться этого:
Метод 1. Использование AWS SDK для JavaScript (AWS SDK v2)
const AWS = require('aws-sdk');
// Set up AWS credentials
AWS.config.update({
accessKeyId: 'YOUR_ACCESS_KEY',
secretAccessKey: 'YOUR_SECRET_ACCESS_KEY',
});
// Create an S3 client
const s3 = new AWS.S3({
endpoint: 'https://nyc3.digitaloceanspaces.com', // Set your Spaces endpoint here
});
// List all objects in a Space
const listObjects = async (bucketName) => {
const params = {
Bucket: bucketName,
};
try {
const response = await s3.listObjectsV2(params).promise();
console.log(response.Contents);
} catch (error) {
console.log(error);
}
};
// Call the listObjects function
listObjects('your-space-name');
Метод 2: использование API DigitalOcean Spaces напрямую с cURL
curl -X GET \
-H 'Authorization: Bearer YOUR_API_KEY' \
'https://nyc3.digitaloceanspaces.com/YOUR_SPACE_NAME?delimiter=/'
Замените YOUR_API_KEYна свой ключ API DigitalOcean и YOUR_SPACE_NAMEна имя вашего пространства.
Метод 3. Использование официальной библиотеки Python DigitalOcean Spaces (требуется установка)
import boto3
# Set up DigitalOcean Spaces credentials
session = boto3.Session(
aws_access_key_id='YOUR_ACCESS_KEY',
aws_secret_access_key='YOUR_SECRET_ACCESS_KEY',
region_name='nyc3' # Set your Spaces region here
)
# List all objects in a Space
def list_objects(bucket_name):
s3 = session.resource('s3')
bucket = s3.Bucket(bucket_name)
for obj in bucket.objects.all():
print(obj.key)
# Call the list_objects function
list_objects('your-space-name')
Замените YOUR_ACCESS_KEY, YOUR_SECRET_ACCESS_KEYи your-space-nameна свои учетные данные DigitalOcean Spaces и имя пространства.