--- lang: ja-jp breaks: true --- # gRPC MagicOnion 通信インターフェイスの戻り値に `UnaryResult` を強制する理由 2021-09-15 > http://neue.cc/2017/04/06_551.html > 面倒くさいのは UnaryResult<T> を返さなければならないところ。そのため UnaryResuylt() というヘルパー関数を読んで包んだのをリターンする羽目になってます。これが地味に面倒くさい。return x + y; って書きたいじゃん、って。 > > で、MagicOnionがUnaryResultを強制するには理由があって、多くの場合は戻り値そのものだけで良いんですが、場合によってはレスポンスヘッダを取りたいとかステータスコードを取りたいとか、そういうのに対応する必要があるんですね。 ## 戻り値に void は指定できないので `UnaryResult<Nil>` を使用する ## `UnaryResult<Task>`の方が良い?? ###### tags: `MagicOnion` `gRPC` `UnaryResult`