에셋 라이브러리

각 프로젝트에는 미디어 라이브러리가 있습니다. 파일은 한 번 업로드하면 고정된 id가 부여되고, 어떤 레코드의 이미지, 비디오, 파일 필드든 그 id로 참조합니다.

업로드 방식

업로드는 세 단계입니다. createFileUpload는 1시간 동안 유효한 업로드 URL을 반환하고, 클라이언트가 바이트를 스토리지로 직접 보내며, 확인 호출이 파일을 반환합니다. 바이트는 GraphQL 엔드포인트를 거치지 않습니다. 이 경로에는 파일별 크기 제한이 없고, 확인 시점의 검사는 스토리지 허용량 기준입니다. 한 번의 REST 호출로 올리는 업로드는 최대 10 MB의 작은 파일을 받습니다.

로그인한 사용자의 브라우저는 공개 키와 그 사용자의 토큰만으로 전체 업로드를 실행할 수 있습니다. 그러면 파일은 그 사용자의 것이 되며, 기본적으로 비공개입니다.

이미지에서 읽는 정보

JPEG, PNG, WebP, GIF의 경우 Fóir는 업로드가 확인될 때 너비, 높이, blurhash 플레이스홀더, 대표 색상을 추출합니다. 이미지 필드는 URL과 함께 이 네 가지를 모두 반환합니다. 그 외의 크기와 형식은 이미지 변환으로 얻습니다.

폴더, 대체 텍스트, CLI

파일은 폴더에 둘 수 있고 대체 텍스트를 가질 수 있으며, 공개 API는 둘 다 파일과 함께 반환합니다. 터미널에서는 foir media로 파일을 업로드, 나열, 업데이트, 삭제, 복원합니다.

삭제와 복원

삭제는 소프트 삭제이며 복원으로 되돌릴 수 있습니다. 저장된 객체를 제거하는 것은 별도의 영구 삭제입니다. 삭제하려면 files:delete 스코프가 필요하며, 파일 쓰기 액세스가 이를 의미하지는 않습니다.

거부되는 항목

HTML, JavaScript, XML 업로드는 거부됩니다. SVG는 허용되며, 직접 열면 스크립트를 차단하는 정책이 적용된 다운로드로 제공됩니다.

자세히 보기

미디어 가이드는 업로드, 공개 범위, CLI 명령, 크롭, 비디오를 다룹니다.