Session
Session : 4D.Session
引数 | 型 | 説明 | |
---|---|---|---|
戻り値 | 4D.Session | ← | Session オブジェクト |
履歴
リリース | 内容 |
---|---|
20 R8 | スタンドアロンセッションのサポート |
20 R5 | リモートクライアントとストアドプロシージャーセッションをサポート |
18 R6 | 追加 |
説明
Session
コマンドは、カレントのユーザーセッションに対応する Session
オブジェクトを返します。
コマンドを呼び出したプロセスによって、カレントユーザーセッションは次のいずれかです:
- Webセッション (スケーラブルセッションが有効化されている 場合)
- リモートクライアントセッション
- ストアドプロシージャセッション
- スタンドアロンアプリケーションのdesigner セッション
詳細については、Session types の段落を参照ください。
サポートされていないコンテキスト (スケーラブルセッションが無効など)から呼び出されると、コマンドは Null を返します。
Webセッション
Webセッションの Session
オブジェクトは、どの Webプロセスからも利用できます:
On Web Authentication
、On Web Connection
、およびOn REST Authentication
データベースメソッド- セミダイナミックページにおいて、4Dタグ (4DTEXT, 4DHTML, 4DEVAL, 4DSCRIPT/, 4DCODE) を介して処理されるコード
- "公開オプション: 4DタグとURL(4DACTION...)" を有効化されたうえで、4DACTION/ URL から呼び出されたプロジェクトメソッド
- モバイルリクエスト用の
On Mobile App Authentication
とOn Mobile App Action
データベースメソッド - RESTリクエストで呼び出された ORDA関数。
Web ユーザーセッションに関する詳細な情報については、Web Server Sessions の章を参照してください。
リモートクライアントセッション
リモートクライアントの Session
オブジェクトは、次のいずれかから利用できます:
- サーバー上で実行 属性を持つプロジェクトメソッド (クライアントプロセスの "双子" プロセスで実行されます)
- トリガー
On Server Open Connection
およびOn Server Shutdown Connection
データベースメソッド
リモートユーザーセッションの詳細については、リモートクライアントユーザーセッション の段落を参照ください。
ストアドプロシージャーセッション
すべてのストアドプロシージャープロセスは、同じ仮想ユーザーセッションを共有します。 ストアドプロシージャーの Session
オブジェクトは、次のいずれかから利用できます:
Execute on server
コマンドで呼び出されたメソッドOn Server Startup
、On Server Shutdown
、On Backup Startup
、On Backup Shutdown
、およびOn System event
データベースメソッド
ストアドプロシージャーの仮想ユーザーセッションに関する情報については、4D Serverと4Dランゲージ のページを参照ください。
スタンドアロンセッション
Session
オブジェクトは、スタンドアロン(シングルユーザー)アプリケーション内の任意のプロセスから利用可能なため、4D 開発環境においてSession
オブジェクトを使用することで、クライアント/サーバー用のコードを書いてテストすることができます。
例題
"公開オプション: 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