0

DataPower では、着信要求の SOAP アクションを読み取る必要があります。読み取ったら、区切り記号の後の最後の文字列を抽出して変数に保存する必要があります。次に、SoapAction を変更し、Datapower の外部に送信されるすべてのリクエストに対して新しい値を設定する必要があります。

私は持っている

    SOAPAction="http://service.example.com/version10_1/getMessage"

私はそれが欲しい

    SOAPAction="http://service.example.com/version11_1/getMessage"

以下のような関数を使用するアイデアがあります。1.ヘッダーから値「getMessage」を部分文字列にする方法を提案してください。変数に保存してさらに使用したい.. バージョンのみがバージョン 10_1 から 11_1 に変更されます。

 <xsl:template name="HeaderChange">

  <xsl:variable name="IncomingRequest" select="dp:request-header('SOAPAction')"/>

    <xsl:variable name="Mymethod"><xsl:value-of select=(get  the        getMessage    here)/></xsl:variable>

     <dp:set-http-request-header name="SOAPHeader" value="'to modify old SOAPAction'"/> 

      <dp:freeze-headers/>
      </xsl:template>
4

3 に答える 3

0

ヘッダー書き換えアクションでもURL書き換えポリシーを使用することでこれを行うことができると思います。

于 2015-03-04T17:59:57.727 に答える
0

Headers/Param タブを使用して追加するだけで、ヘッダー名と値を追加できます。

于 2015-03-10T19:25:59.387 に答える