URL エンコード

HTTP 仕様に従うと、安全でない文字が MIME タイプ application/x-www-form-urlencoded を持つ転送データに含まれる場合、エンコード (エスケープ) されなければなりません。これは、安全でない文字を、パーセント記号 (%) を先頭につけた等価な 16 進表記で置換することで行われます。

Silk Performer は、標準エンコード タイプを提供します:ENCODE_FORM, ENCODE_ESCAPE, ENCODE_BLANKS and ENCODE_NONE。これらのエンコードの種類は、エスケープする文字によって異なります。

Siebel Web クライアント Java アプレットは、標準 Silk Performer エンコード タイプと異なる独自のエンコード タイプを適用します。この理由で、Silk Performer は新しいエンコード タイプ ENCODE_CUSTOM を提供し、関数 WebFormDefineEncodeCustom を使用して設定できます。

Siebel が使用するエンコード タイプは、次の点で、標準エンコード タイプ ENCODE_FORM とは異なります。

Silk Performer Web Recorder は、HTTP リクエストにこの特殊なエンコード タイプを適用することを検出し、次のテクニックを使用してスクリプトを生成します。

ENCODE_CUSTOM を利用した記録済みスクリプトの一部

この例は、これらのテクニックを利用した記録済みスクリプトの一部を示します。

dcltrans
  transaction TInit
  begin
    WebSetBrowser(WEB_BROWSER_MSIE55);
    WebFormDefineEncodeCustom("base=ENCODE_FORM;"
                              " +'@'; -'!()$,'");
  end TInit;

// ...

dclform
  SALES_START_SWE011 <ENCODE_CUSTOM> :
    "SWERPC"                    := "1",
    "SWECount"                  := "4",
    "SWECmd"                    := "InvokeMethod",
    "SWEMethod"                 := "GetPreference",
    "SWEInputPropSet"           := "@0`0`3`0`GetPreference`3``pCategory`"
                                   "Behavior`pPrefName``SWEJSXInfo`false`";