Upgrade to Pro — share decks privately, control downloads, hide ads and more …

async_graphqlのguardが便利だった話

 async_graphqlのguardが便利だった話

「Rust、何もわからない...#8」

estie | エスティ

June 05, 2023
Tweet

More Decks by estie | エスティ

Other Decks in Programming

Transcript

  1. 4 1. 現状はReact + Rust(REST)の構成だが、ユースケースごとにフロントでリソースの結合 成形を行っている箇所が複数あってちょっとつらい 2. 見た目のちょっとした変更のためにバックエンドまで変更しなければならないことが 多々ある 3.

    フィールド単位で参照の権限を設定したいが、似たような実装が毎回必要になる 4. ……etc なぜGraphQLにしたいか 移行したいので検証を実施した - Juniperで試しに実装してみる話 (Rust何もわからないvol.4) - 結果、やりたいことはできそう。
  2. 5 Juniper or async_graphqlで検討 差分は大きくなかったが以下が決め手になりasync_graphqlを使うことに - OneofObjectが使える - Inputで値が入ったEnumが使える -

    Fieldの定義とGuardが柔軟に行えそう - Fieldごとに設定可能でResolver実行前に実行されるもの 技術選定の話
  3. 6 - crateをいくつかにわけて開発 - api - sql - usecase -

    middleware - ……etc 元々どんな感じで作っていたか
  4. 7 - crateをいくつかにわけて開発 - api <- ここを部分的にgqlに移行 - sql -

    usecase - middleware - ……etc どんな感じで移行するか
  5. 13 なぜ便利だったかの話 不動産ドメインには多くの登場人物が存在します - ビルを保有する人 - ビルを管理する人 - 募集を出す人 -

    営業をする人 - 部屋を借りたい人 - ……etc 同じ“ビル”を指していても全く同じ情報が全てのユーザに見えて良いわけで はありません。