uplo
v0.21.0
Verwaltet Datei-Uploads zu verschiedenen Speicherdiensten wie Amazon S3, Google Cloud usw. Es unterstützt auch verschiedene Arten von ORM-Adaptern, wie Prisma.
Fügen Sie @uplo/node
zu Ihrer package.json hinzu
yarn add @uplo/node
Adapter installieren (zum Beispiel Prisma)
yarn add @uplo/adapter-prisma dataloader
Dienst installieren (z. B. S3)
yarn add @uplo/service-s3
Definieren Sie die Uplo-Instanz
import Uplo from '@uplo/node' ;
import PrismaAdapter from '@uplo/adapter-prisma' ;
import GCSService from '@uplo/service-gcs' ;
const config = {
privateKey : process . env . APPLICATION_SECRET , // Used to sign direct upload keys
signedIdExpiresIn : 60 * 60 , // Time how long a Signed ID is valid
} ;
const uplo = Uplo ( {
config ,
adapter : new PrismaAdapter ( { prisma } ) ,
services : {
s3 : S3Service ( {
isPublic : false ,
region : process . env . AWS_REGION ,
bucket : process . env . AWS_BUCKET ,
accessKeyId : '*****' ,
secretAccessKey : '*****' ,
} ) ,
} ,
attachments : {
user : {
avatar : true , // pass true to use default options
} ,
post : {
images : { multiple : true }
}
} ,
} ) ;
const attachment = await uplo . attachments . user ( 123 ) . avatar . attachFile ( await blobFileInput ( {
path : '/home/images/image.png'
} ) )
Das Paket ist als Open Source unter den Bedingungen der MIT-Lizenz verfügbar.