nodejs를 사용하여 원격 URL에서 Supabase로 미디어 업로드
6342 단어 javascripttutorialnodesupabase
소개
최근에 Supabase에 이미지를 대량으로 업로드해야 했는데 nodejs가 좀 녹슬어서 시간을 좀 허비해서 간단한 결과를 다른 분들과 공유해야겠다는 생각이 들었습니다.
수파베이스 설정
첫 번째 단계는 supabase에서 버킷을 생성하거나 공개하거나 올바른 액세스 권한을 갖도록 정책을 생성하는 것입니다.
이 URL에서 모든 RLS 정책을 우회하기 위해 service_role API 키를 얻을 수도 있습니다(공개적으로 공유하거나 표시하지 마십시오).
https://app.supabase.com/project/{YOUR_PROJECT_ID}/settings/api
스크립트 설정
프로젝트를 초기화하려면 npm 또는 yarn이 필요하고 이 두 명령을 실행해야 합니다.
npm init
npm install @supabase/supabase-js node-fetch@2
package.json을 생성하고 필요한 종속성을 설치합니다. 이제 script.js 파일을 만들고 실행할 수 있습니다.
node script.js
Typescript를 사용하고 싶다면 할 수도 있습니다
npx ts-node script.ts
스크립트
import fetch from "node-fetch"
import { createClient } from '@supabase/supabase-js'
const script = async () => {
const options = {
schema: 'public',
autoRefreshToken: true,
persistSession: true,
detectSessionInUrl: false,
}
const supabase = createClient(
`https://${process.env.SUPABASE_PROJECT_ID}.supabase.co`,
process.env.SUPABASE_API_KEY || '',
options,
)
const url = "https://www.grapheine.com/wp-content/uploads/2015/09/nouveau-logo-google-2015.jpg"
const blob = await fetch(url).then((r) => r.blob())
await supabase.storage.from('my-new-bucket').upload("my-name" + '.jpg', blob)
const { publicURL } = supabase.storage.from('covers').getPublicUrl("my-name" + '.jpg')
//To save it in your DB
await supabase.from('myTable').update({ logo_url: publicURL }).eq('id', the_thing_id)
}
script()
이제 스크립트를 실행하고 일괄 업로드를 위해 반복할 수 있습니다.
😄 읽어주셔서 감사합니다! 이 기사가 유용하다고 생각되면 더 많은 팁을 원하고 저만의 스타트업 스튜디오를 만드는 여정을 따르세요.
Reference
이 문제에 관하여(nodejs를 사용하여 원격 URL에서 Supabase로 미디어 업로드), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/antoine_m/upload-media-to-supabase-from-remote-url-with-nodejs-5h45텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)