📘s3

s3 란?

AWS Simple Storage Service(S3)는 인터넷용 스토리지 서비스입니다. 이 서비스는 개발자가 더 쉽게 웹 규모 컴퓨팅 작업을 수행할 수 있도록 설계되었습니다. 제공하는 단순한 웹 서비스 인터페이스를 사용하여 웹에서 언제 어디서나 원하는 양의 데이터를 저장하고 검색할 수 있습니다

쓴 이유

데이터베이스에 사진을 그대로 저장할 수 없어서 사진을 s3로 올려서 url을 반환한 다음 데이터51베이스에 url을 저장하였다.

코드


        file = request.FILES['id']

        fileFormat = file.content_type.split("/")[1]
        file._set_name(str(uuid.uuid4()))
        s3r = boto3.resource('s3', aws_access_key_id=settings.AWS_ACCESS_KEY_ID,
                             aws_secret_access_key=settings.AWS_SECRET_ACCESS_KEY)
        key = f"{file}"

        s3r.Bucket(settings.AWS_STORAGE_BUCKET_NAME).put_object(Key="static/" + key, Body=file, ContentType=fileFormat)
        key = f"static/{file}"
        s3url = settings.AWS_S3_CUSTOM_DOMAIN + "/" + key
  
        return Response(s3url, status=200)
        
        

태그:

카테고리:

업데이트: