メインコンテンツまでスキップ
バージョン: 開発中

Session

Session : 4D.Session

引数説明
戻り値4D.SessionSession オブジェクト
履歴
リリース内容
20 R5リモートクライアントとストアドプロシージャーセッションをサポート
18 R6追加

説明

Session コマンドは、カレントのユーザーセッションに対応する Session オブジェクトを返します。

コマンドを呼び出したプロセスによって、カレントユーザーセッションは次のいずれかです:

For more information, see the Session types paragraph.

サポートされていないコンテキスト (シングルユーザーアプリケーション、スケーラブルセッションが無効...) から呼び出されると、コマンドは Null を返します。

Webセッション

Webセッションの Session オブジェクトは、どの Webプロセスからも利用できます:

  • On Web AuthenticationOn Web Connection、および On REST Authentication データベースメソッド
  • セミダイナミックページにおいて、4Dタグ (4DTEXT, 4DHTML, 4DEVAL, 4DSCRIPT/, 4DCODE) を介して処理されるコード
  • "公開オプション: 4DタグとURL(4DACTION...)" を有効化されたうえで、4DACTION/ URL から呼び出されたプロジェクトメソッド
  • モバイルリクエスト用の On Mobile App AuthenticationOn Mobile App Action データベースメソッド
  • RESTリクエストで呼び出された ORDA関数。

For more information on web user sessions, please refer to the Web Server Sessions section.

リモートクライアントセッション

リモートクライアントの Session オブジェクトは、次のいずれかから利用できます:

  • サーバー上で実行 属性を持つプロジェクトメソッド (クライアントプロセスの "双子" プロセスで実行されます)
  • トリガー
  • On Server Open Connection および On Server Shutdown Connection データベースメソッド

リモートユーザーセッションの詳細については、リモートクライアントユーザーセッション の段落を参照ください。

ストアドプロシージャーセッション

すべてのストアドプロシージャープロセスは、同じ仮想ユーザーセッションを共有します。 ストアドプロシージャーの Session オブジェクトは、次のいずれかから利用できます:

  • methods called with the Execute on server command,
  • On Server StartupOn Server ShutdownOn Backup StartupOn Backup Shutdown、および On System event データベースメソッド

ストアドプロシージャーの仮想ユーザーセッションに関する情報については、4D Serverと4Dランゲージ のページを参照ください。

例題

"公開オプション: 4DタグとURL(4DACTION...)" を有効にした action_Session メソッドを定義しました。 ブラウザーに次の URL を入力してメソッドを呼び出します:

IP:port/4DACTION/action_Session
  //action_Session メソッド
Case of
:(Session#Null)
If(Session.hasPrivilege("WebAdmin")) // hasPrivilege 関数を呼び出します
WEB SEND TEXT("4DACTION --> セッションは WebAdmin です")
Else
WEB SEND TEXT("4DACTION --> セッションは WebAdmin ではありません")
End if
Else
WEB SEND TEXT("4DACTION --> セッションは null です")
End case

参照

Session storage
Session API
Web server user sessions