我有一个http协议Web服务测试,当放入参数时返回此soap响应:
"\n--uuid:cabe2125-cdda-4cf4-9678-b364921dc1d8\r\nContent-Type: application/xop+xml; charset=UTF-8; type="text/xml";\r\nContent-Transfer-Encoding: binary\r\nContent-ID: <root.message@cxf.apache.org>\r\n\r\n<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><ns2:hentDokumentForventningerResponse xmlns:ns2="http://some.com/service/virksomhet/henvendelsesbehandling/v1" xmlns:ns3="http://some.com/service/virksomhet/henvendelse/v1/informasjon"><dokumentForventning><id>400541</id><kodeverkId>2</kodeverkId><innsendingsValg>IKKE_VALGT</innsendingsValg><hovedskjema>false</hovedskjema></dokumentForventning><dokumentForventning><id>400542</id><kodeverkId>ja</kodeverkId><innsendingsValg>IKKE_VALGT</innsendingsValg><hovedskjema>true</hovedskjema></dokumentForventning><dokumentForventning><id>400540</id><kodeverkId>3</kodeverkId><innsendingsValg>IKKE_VALGT</innsendingsValg><hovedskjema>false</hovedskjema></dokumentForventning></ns2:hentDokumentForventningerResponse></soap:Body></soap:Envelope>\r\n--uuid:cabe2125-cdda-4cf4-9678-b364921dc1d8--"
我想提取值400541首先出现在:
xmlns:ns3="http://some.com/service/virksomhet/henvendelse/v1/informasjon"><dokumentForventning><id>
以上 . 看一下soapui中的响应,我看到了结构:
soap:Envelope/soap:Body/ns2:hentDokumentForventningerResponse/dokumentForventning/id
然后我正在使用:
lr_xml_extract("XML={hentDokumentSoapRespons}",
"XMLFragmentParam=OutputParameter",
"Query=/soap:Envelope/soap:Body/ns2:hentDokumentForventningerResponse/dokumentForventning/id", LAST);
但我得到错误(没有找到任何匹配):
HentDokumentforventing.c(66):警告:“lr_xml_extract”找不到任何匹配项
HentDokumentforventing.c(70):通知:参数替换:参数“OutputParameter”=“”
看一下我在一个参数(上面粘贴的日志)中想要得到值400541的响应,我怎么能用lr_xml_extract() grab 它,更重要的是,如果粘贴在上面的日志,会建议哪个xpath / path?
1 回答
尝试使用查询