Grow with AppMaster Grow with AppMaster.
Become our partner arrow ico

AppMasterでカレントユーザーを特定する方法

AppMasterでカレントユーザーを特定する方法

アプリケーションを実行する際、誰が特定のプロセスを実行しているかを知る必要があることがよくあります。これは、データを正しく分配し、異なるリソースへのアクセスを許可または制限するために必要なことです。この機能は、ほとんどすべてのアプリケーションで使用されています。

AppMasterで現在のユーザを特定する方法

バックエンド側で

AppMasterには、Auth.Get Current Userブロックがあります。Get Current UserブロックがAppMasterにあり、現在のユーザを検出する。これはAuthモジュールによって提供されている。左側のbackendタブにあるbusiness-processesエディタで見つけることができます。

Get Current User block in AppMaster

このブロックは、Userデータベースから、ブロックを実行したユーザーに属するレコードを返します。

重要

Auth:Get Current Userブロックは、認可されたユーザに対してのみ機能します。それ以外の場合、このブロックの結果は未定義となります。

この単純なメソッドで、アプリケーションの現在のユーザーを取得することができます。しかし、このブロックはバックエンドにしか存在しません。 しかし、たいていの場合は、アプリケーションのフロントエンドでユーザーを特定するために必要なものです。

フロントエンド側で

バックエンドのプロセスをフロントエンドから実行するには、 エンドポイントを使用します。これらについては、こちらの記事で詳しく説明しています。

Auth:Get Current User ブロックでは、以下のスクリーンショットで示されているように新しいエンドポイントを作成する必要があります。

Get Current User block

フロントエンドからエンドポイントを呼び出すには、Server Request GET /user/get-current ブロックを使用する必要があります (この例では)。エンドポイントの利用フローは、ウェブアプリケーションとモバイルアプリケーションで同じです。

Server Request GET

現在のユーザを操作する

それでは、Auth.Get Current Userブロックの使用例を見てみましょう。Get Current Userブロックの使用例を見てみましょう。このブロック自体は、Userテーブルからレコードを返します。このレコードから特定のデータを取得するには、Expand Userブロックを使用してこのレコードを展開する必要があります。

Get Current User

出力されたすべてのフィールドは、特定の方法で使用することができます。たとえば、ユーザーアカウントが確認されているかどうかを確認するには、以下の画像のようにブーリアン型のConfirmedフィールドを使用することができます。

AppMaster

パラメータ ウィズ

出力のwithパラメータは、リクエストが関連テーブルを使用して実行されなければならないかどうかを指定します。例えば、User Sessionsテーブルから現在のUserオブジェクトのデータ(現在のユーザーセッションのリスト)を取得するには、関連するテーブル(この場合はUser Sessions)を検索するためにwithフィールドの値を指定する必要があるわけです。

Parameter With

重要!

Withパラメータはクエリを複雑にするため、処理時間が長くなります。デフォルトでは使用されず、必要な場合のみ使用されます。

結論

この記事では、バックエンド側とフロントエンド側で、アプリケーションの現在のユーザーを判断する方法を学びました。この機能は、アプリケーション開発において最も頻繁に使用されるものの1つです。AppMasterを使えば、ビジネスプロセスブロックのいくつかの組み合わせで、これらのリクエストを簡単に実行することができます。

関連記事

遠隔医療プラットフォーム: 初心者のための総合ガイド
遠隔医療プラットフォーム: 初心者のための総合ガイド
この初心者向けガイドで、遠隔医療プラットフォームの基本を学びましょう。主な機能、利点、課題、ノーコード ツールの役割を理解しましょう。
電子健康記録 (EHR) とは何ですか? 現代の医療においてなぜ不可欠なのでしょうか?
電子健康記録 (EHR) とは何ですか? 現代の医療においてなぜ不可欠なのでしょうか?
電子医療記録 (EHR) が医療サービスの向上、患者の転帰の改善、医療業務の効率化にもたらすメリットについてご紹介します。
ビジュアルプログラミング言語と従来のコーディング: どちらがより効率的か?
ビジュアルプログラミング言語と従来のコーディング: どちらがより効率的か?
ビジュアル プログラミング言語と従来のコーディングの効率性を比較し、革新的なソリューションを求める開発者にとっての利点と課題を明らかにします。
無料で始めましょう
これを自分で試してみませんか?

AppMaster の能力を理解する最善の方法は、自分の目で確かめることです。無料サブスクリプションで数分で独自のアプリケーションを作成

あなたのアイデアを生き生きとさせる