use server ディレクティブ
use server
ディレクティブは、関数やファイルをサーバーサイドで実行するように指定します。ファイルの先頭に記述するとそのファイル内のすべての関数がサーバーサイドで実行され、関数の先頭にインラインで記述するとその関数をサーバー関数 (Server Function)としてマークします。これはReactの機能です。
ファイル先頭での use server
使用
以下の例は、ファイルの先頭に use server
ディレクティブを記述したものです。このファイル内のすべての関数はサーバーサイドで実行されます。
クライアントコンポーネントでのサーバー関数使用
クライアントコンポーネントでサーバー関数を使用するには、専用のファイルに use server
ディレクティブを記述してサーバー関数を作成する必要があります。これらのサーバー関数は、クライアントおよびサーバーコンポーネントにインポートして実行できます。
actions.ts
に fetchUsers
サーバー関数があると仮定します:
その後、fetchUsers
サーバー関数をクライアントコンポーネントにインポートし、クライアントサイドで実行できます。
インラインでの use server
使用
以下の例では、use server
を関数の先頭にインラインで記述し、サーバー関数 (Server Function)としてマークしています:
セキュリティに関する考慮事項
use server
ディレクティブを使用する際は、すべてのサーバーサイドロジックが安全であり、機密データが保護されていることを確認することが重要です。
認証と認可
機密性の高いサーバーサイド操作を実行する前に、必ずユーザーを認証および認可してください。
参考
use server
の詳細については、Reactドキュメントを参照してください。