変換関数

ユーザーは、独自のカスタム変換関数を書き、この変換関数を記録ルールに指定できます。変換関数は、ネイティブ DLL ファイル (C/C++ でプログラムを記述) に含まれます。変換関数内で、解析ルールの値が、指定された関数を使用して変換されます。解析関数では、元の値のみが解析されます。

たとえば、サーバーによって返される値が Double 形式で、クライアントが送信する値が整数形式の場合があります。したがって、簡単な解析ルールでは、スクリプトに一致を見つけることができません。ただし、整数を Double 形式に変換するカスタム変換関数を適用すると、解析ルールでは、想定される一致を再度見つけることができます。

注: 変換関数は、HTTP 解析ルールに対してのみ指定できます。

記録ルールのサンプル

次に、変換関数が指定されている記録ルールの例を示します。

<RecordingRuleSet>
  <HttpParsingRule>
    <Name>Parse by Boundaries, Convert and Replace (with custom conversion DLL)</Name>
    <Search>
      <SearchIn type="Select{Body|Header|All}">Body</SearchIn>
      <LB>
        <Str>&gt;</Str>
      </LB>
      <RB>
        <Str>&lt;/strong&gt;</Str>
      </RB>
      <Conversion>
        <Dll>SampleConversion.dll</Dll>
        <Function>ConvertToUpperCase</Function>
      </Conversion>
    </Search>
    <ScriptGen>
      <ReplaceIn type="MultiSelect{FormFieldValue|Url|PostedData}">FormFieldV alue, Url, PostedData</ReplaceIn>
      <VarName>ParsedByBoundary</VarName>
      <GenDebugPrint>true</GenDebugPrint>
      <Conversion>
        <BdlFunction>MyConvertToUpperCase</BdlFunction>
      </Conversion>
    </ScriptGen>
  </HttpParsingRule>
</RecordingRuleSet>