あるページの閲覧時に何か処理を付け加えたい場合、GraphQLの方ではどうすれば良いか
例えば、本のアプリがあったとして本の詳細画面 BooksControllerのshowアクションで特定の処理を追加したとする。
モノリスなRailsのアプリだったら問題ないが、この処理をモバイルアプリやSPAでも呼ぼうと思った時に、APIのどこに追加すれば良いか迷いました。
答えは単純で、今回はその処理のmutationを1つ用意して、フロント側で「ページを表示した」というユースケースの時にそのmutationを叩いてもらう感じにしました。よく考えたらそれが良かった。
APIの中に実装を入れ込んでしまうと、そのAPIが必ず詳細ページに使用されるみたいな扱いになってしまうと良くないと考えました。