Closed7
Scrapクローン作る
![おーみー](https://res.cloudinary.com/zenn/image/fetch/s--7byHQRWj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_70/https://storage.googleapis.com/zenn-user-upload/avatar/b95d2edbbf.jpeg)
Zenn scrapクローンが作りたくなってきた。バックエンドはsupabaseにする。フロントエンドをRemix on Cloudflare WorkersにするかNext.js on Vercelにするかが悩みどころ。
![おーみー](https://res.cloudinary.com/zenn/image/fetch/s--7byHQRWj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_70/https://storage.googleapis.com/zenn-user-upload/avatar/b95d2edbbf.jpeg)
supabaseクライアントをCloudflare Workersで動かす場合、明示的に fetch
を指定しないと動かないことがわかった。たぶんモジュールがESMだからだと思う。
export const supabase = createClient(SUPABASE_URL, SUPABASE_KEY, { fetch });
![おーみー](https://res.cloudinary.com/zenn/image/fetch/s--7byHQRWj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_70/https://storage.googleapis.com/zenn-user-upload/avatar/b95d2edbbf.jpeg)
環境変数ファイルのパスを wrangler.toml
で指定しても動いていないっぽい。
![おーみー](https://res.cloudinary.com/zenn/image/fetch/s--7byHQRWj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_70/https://storage.googleapis.com/zenn-user-upload/avatar/b95d2edbbf.jpeg)
Row Level Securityってやつを有効化するとデータがちゃんと取れない(空配列になってしまう)。enableにすることを推奨されてるけどなんだろう。そもそもこれは何?
![おーみー](https://res.cloudinary.com/zenn/image/fetch/s--7byHQRWj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_70/https://storage.googleapis.com/zenn-user-upload/avatar/b95d2edbbf.jpeg)
RLS、「IDが偶数のカラムのみを削除可能にする」みたいなセキュリティポリシーが作れるらしい。面白そう。
今回はあらゆるユーザに読み取りさせたいので
CREATE POLICY "policy_name"
ON public.scraps
FOR SELECT USING (
true
);
とすればいいか。
![おーみー](https://res.cloudinary.com/zenn/image/fetch/s--7byHQRWj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_70/https://storage.googleapis.com/zenn-user-upload/avatar/b95d2edbbf.jpeg)
ブックマークを保存する用途も考えていて、Web Share Target APIというのがあるらしい。
![おーみー](https://res.cloudinary.com/zenn/image/fetch/s--7byHQRWj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_70/https://storage.googleapis.com/zenn-user-upload/avatar/b95d2edbbf.jpeg)
なんかポリシーが入ってるとupdateできない…これっぽいけどもともとusingしてた
このスクラップは2023/12/27にクローズされました