14分で読めます
API のバリデーションは Zod とドメイン層のどちらに書くか
「題名は空にできない」という業務ルールは、API の入口で使う Zod にもドメイン層にも書けてしまい、両方に書くと片方だけ変えたときに食い違う。Zod には値の形だけを書き、業務ルールはドメイン層の関数1つに書く分け方を、最小のコードで示す。
TypeScriptZod
RECENT POST
「題名は空にできない」という業務ルールは、API の入口で使う Zod にもドメイン層にも書けてしまい、両方に書くと片方だけ変えたときに食い違う。Zod には値の形だけを書き、業務ルールはドメイン層の関数1つに書く分け方を、最小のコードで示す。
会社が保存している個人情報は、なぜ外の人に持ち出されるのか。国の機関が公表した事例をもとに、認証だけを行い認可を行っていない API を TypeScript の短いコードで再現し、他人の情報が返る理由と直し方を初心者向けに解説する。
共通鍵、公開鍵と秘密鍵、パスワード、API キーは、だれが持ち、だれに配ってよいかが違う。暗号化とハッシュ化の違いと、「元に戻せない」が絶対にできないという意味ではない理由を、図と TypeScript の短いコードで初心者向けに解説する。
ABOUT ME
Webエンジニア / 写真好き
東京でWebアプリをつくっているエンジニアです。TypeScriptが好きで、フロントエンドもバックエンドも書きます。動くものをつくって、使いやすく育てていくのが楽しいです。
カメラが好きで、休みの日はカメラを持って出かけています。
つくることで、見える景色がある。