1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

tRPCについて

Last updated at Posted at 2023-12-17

tRPCとは?

  • スキーマやコード生成なしに型安全なAPIを簡単に構築および利用できるようになるTypeScriptモノレポ向けに設計されたRPCの実装の一つ。
  • APIエンドポイントの静的型付けを行い、その型をクライアントとサーバー(サーバーとサーバー)間で共有できるようにする。

RPC

Remote Procedure Call(リモート プロシージャ コール)の略。
あるコンピュータ(サーバー)上の関数を、別のコンピュータ(クライアント)から呼び出す方法。
HTTP/REST APIでは、URLを呼び出してデータを取得するが、RPCでは関数を呼び出してデータを取得する。

// HTTP/REST
const res = await fetch('/api/users/1');
const user = await res.json();

// RPC
const user = await api.users.getById({ id: 1 });

Monorepo(モノレポ)

プロダクトに関するコードを全て一つのリポジトリで管理する方法。

頻繁に使用される用語

用語 説明
Prucedure    APIエンドポイント。Query、Mutation、Subscriptionを使用できるようになる。        
Query    データを取得するプロシージャ。
Mutation    データを作成、変更、削除するプロシージャ。
Subscription   データの変更をリアルタイムで、検知し受け取るプロシージャ。
Router    共有された名前空間の下にあるプロシージャの集まり。
Context    全てのプロシージャがアクセスできるもの。セッション状態やDB接続などに使用される。    
Middleware    プロシージャの前後でコードを実行できる関数。 コンテキストを変更することができる。    
Validation    正しい入力データか確認するプロセス。  
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?