@yrchi_k
учусь веб разработке

Куда можно загружать изображения форматов jpg, png, svg и чтобы получать прямые ссылки и использовать их для своего сайт?

Какой можно использовать сервис, чтобы в нем одном можно было загружать изображения форматов jpg, png, svg и чтобы получать прямые ссылки и использовать их для своего сайта? и чтобы я мог в этом сервисе в своем аккаунте внутри структурировать, типа подписывать, для каких сайтов идет одна группа изображений, для каких сайтов другая группа изображения.

P.S. Предложения с своим хостингом пожалуйста не предлагайте , у меня есть аккаунт в beget, но я всё-таки для изображений и получения ссылок хочу использовать какой-то отдельный сервис.
  • Вопрос задан
  • 94 просмотра
Решения вопроса 1
Andrew_Pinkerton
@Andrew_Pinkerton
Backend-разработчик
https://imgbb.com/
https://cloudinary.com/solutions/image_management

AWS S3
Uploading Files
import boto3
from botocore.exceptions import ClientError


def upload_file(file_name, bucket, object_name=None):
    """Upload a file to an S3 bucket

    :param file_name: File to upload
    :param bucket: Bucket to upload to
    :param object_name: S3 object name. If not specified then file_name is used
    :return: True if file was uploaded, else False
    """

    # If S3 object_name was not specified, use file_name
    if object_name is None:
        object_name = file_name

    # Upload the file
    s3_client = boto3.client('s3')
    try:
        response = s3_client.upload_file(file_name, bucket, object_name)
    except ClientError as e:
        logging.error(e)
        return False
    return True

Presigned URLs
import logging
import boto3
from botocore.exceptions import ClientError


def create_presigned_url(bucket_name, object_name, expiration=3600):
    """Generate a presigned URL to share an S3 object

    :param bucket_name: string
    :param object_name: string
    :param expiration: Time in seconds for the presigned URL to remain valid
    :return: Presigned URL as string. If error, returns None.
    """

    # Generate a presigned URL for the S3 object
    s3_client = boto3.client('s3')
    try:
        response = s3_client.generate_presigned_url('get_object',
                                                    Params={'Bucket': bucket_name,
                                                            'Key': object_name},
                                                    ExpiresIn=expiration)
    except ClientError as e:
        logging.error(e)
        return None

    # The response contains the presigned URL
    return response
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы