4D v15

WEB GET OPTION と WEB SET OPTION

ホーム

 
4D v15
WEB GET OPTION と WEB SET OPTION

WEB GET OPTION と WEB SET OPTION  


 

 

WEB GET OPTION ( selector ; value )
WEB SET OPTION ( selector ; value )

説明  

4D v14 R3から導入

WEB GET OPTIONWEB SET OPTION コマンドにおいて、selector 引数に対して新しい値が使用できるようになりました:
定数
Web Session enable IP address validation倍長整数83
  • スコープ: ローカル Web サーバー
  • 2セッション間で設定を保持: No
  • 詳細: セッション cookieに対して、IPアドレス認証を有効化または無効化します。セキュリティ上の理由から、4D Webサーバーはセッションcookieを格納しているリクエストのIPアドレスをチェックし、cookieを作成する際に使用されたIPアドレスと一致 しない場合にはそのリクエストを拒否します。一部の特定のアプリケーションにおいては、IPアドレスが合致しない場合でもセッションcookieを受け入 れるために認証を無効化したい場合があるかもしれません。例えば、モバイルデバイスがWifiから3G/4G回線へと切り替わる際には、IPは変わってし まいます。この場合、オプションに0を渡す事によって、IPアドレスが変わった場合でもそのクライアントがそのWebセッションを使用し続けられるように しなければなりません。この設定を使用することにより、アプリケーションのセキュリティレベルは下がるということに注意して下さい。
    この設定が定義されると、それは直ちに有効になります(HTTP サーバーを再起動する必要はありません)。
  • 取り得る値: 0 (無効化) または 1 (有効化)
  • デフォルト値: 1 (IP アドレスはチェックされます)

説明  

4D v15では、selector引数に対し、新しい定数が使用できるようになりました:Web debug log (84) です。

このセレクターは新しい4D WebサーバーHTTPリクエストログファイルの状態を取得・あるいは設定するものです。有効化された場合、"HTTPDebugLog_nn.txt"という名前のファイルがアプリケーションの"Logs"フォルダに保存されます(nnはファイル番号です)。これはWebサーバーに関連する事象をデバッグするのに有用です。このログはrawモードでそれぞれのリクエストとそれぞれのレスポンスを記録します。ヘッダーも含めたリクエスト全体は記録され、オプションでボディ部分もログを取ることができます。

Web debug logselectorに渡した場合、value引数に複数のオプションを記録したい情報に応じて取得、または設定することができます。以下の新しい定数は"Web Server"定数テーマ内に追加されたものです:

定数(値)詳細
wdl disable (0)倍長整数Web HTTP デバッグログは無効化されます
wdl enable without body (1)倍長整数Web HTTP デバッグログはボディ部分を含めずに有効化されます(このときボディサイズは記録されます)
wdl enable with response body (3)倍長整数Web HTTP デバッグログは有効化され、ボディ部分はレスポンスに対してのみ有効化されます
wdl enable with request body (5)倍長整数Web HTTP デバッグログは有効化され、ボディ部分はリクエストに対してのみ有効化されます
wdl enable with all body parts (7)倍長整数Web HTTP デバッグログは有効化され、ボディ部分はレスポンスとリクエスト両方に対して有効化されます

注: HTTPリクエストログファイルはWEB SET OPTIONコマンドを使用することによってのみ有効化/無効化できます。

  // IPアドレス認証を無効化
 WEB SET OPTION(Web session enable IP address validation;0)
 ... // 特定のコード
  // IPアドレス認証を有効化
 WEB SET OPTION(Web session enable IP address validation;1)

HTTP デバッグログをボディ部分なしで有効化する場合を考えます:

ログエントリーは次のようになります:

# REQUEST
# SocketID: 1592
# PeerIP: 127.0.0.1
# PeerPort: 54912
# TimeStamp: 39089388
GET /4DWEBTEST HTTP/1.1
Connection: Close
Host: 127.0.0.1
User-Agent: 4D_HTTP_Client/0.0.0.0

# RESPONSE
# SocketID: 1592
# PeerIP: 127.0.0.1
# PeerPort: 54912
# TimeStamp: 39089389 (elapsed time: 1 ms)
HTTP/1.1 200 OK
Accept-Ranges: bytes
Connection: close
Content-Length: 3555
Content-Type: text/plain; charset=UTF-8
Date: Tue, 20 Jan 2015 10:51:29 GMT
Expires: Tue, 20 Jan 2015 10:51:29 GMT
Pragma: no-cache
Server: 4D/14.6.0

[Body Size: 3555]

 
プロパティ 

プロダクト: 4D
テーマ: ランゲージ

 
履歴 

 
ARTICLE USAGE

4D v15 - アップグレードリファレンス(標準版) ( 4D v15)

Inherited from : WEB GET OPTION と WEB SET OPTION ( 4D v15)