我使用这些代码将我的方法隐藏在我的 XML(WSDL) 文件中:
<xsl:template match="wsdl:operation[@name = 'GetCityWeatherByZIP']" />
<xsl:template match="wsdl:message[@name = 'GetCityWeatherByZIPSoapIn']" />
<xsl:template match="wsdl:message[@name = 'GetCityWeatherByZIPSoapOut']" />
<xsl:template match="wsdl:message[@name = 'GetCityWeatherByZIPHttpGetIn']" />
<xsl:template match="wsdl:message[@name = 'GetCityWeatherByZIPHttpGetOut']" />
<xsl:template match="wsdl:message[@name = 'GetCityWeatherByZIPHttpPostIn']" />
<xsl:template match="wsdl:message[@name = 'GetCityWeatherByZIPHttpPostOut']" />
<xsl:template match="s:element[@name = 'GetCityWeatherByZIP']" />
<xsl:template match="s:element[@name = 'GetCityWeatherByZIPResponse']" />
现在我只想使用一个条件来隐藏所有这些,而不是多个 if。实际上,我在我的 .xslt 文件中使用了这几行来隐藏我的方法从一个特殊的 IP 地址:
<xsl:template match="wsdl:operation[@name = 'GetCityWeatherByZIP']">
<xsl:variable name="rcaTrimmed"
select="substring-before(substring-after($remoteClientAddress, '/'), ':')" />
<xsl:if test="not($rcaTrimmed = '192.168.3.74')">
<xsl:copy>
<xsl:apply-templates select="@* | node()" />
</xsl:copy>
</xsl:if>
</xsl:template>
我想将我**<xsl:template match**
的所有内容添加到一行中,然后将它们全部隐藏在一个特殊的 IP 地址中,我不想为我的所有方法一一编写这些代码。我怎样才能达到这个目的?