excel+webservice+filterxml
excel 2013新增的函数中有个三个网络函数,包括webservice、filterxml、encodeurl
测试:
本来想用wvs的测试站(http://testaspnet.vulnweb.com/acuservice/service.asmx?WSDL)来做,但是发现还有差别;
具体区别如下:
猜测该处是由于webservice的配置问题所导致,还待深入,另外
(1)该处webservice是通过get形式传递,估计有的webservice有限制仅能post,需要搭建webservice再继续测试
(2)webservice函数执行的结果通过filterxml解析,故在取值时,通过xpath进行数据的解析。
——-add—-
webservice 的实现方式主要为rest和soap,其中rest支持get、put、post、delete,而soap仅执行post;怀疑以上问题与此有关,待验证
语法
WEBSERVICE(url)
WEBSERVICE 函数语法具有下列参数。
- url 必需。 要调用的 web 服务的 URL。
示例
=WEBSERVICE(“http://mywebservice.com/serviceEndpoint?searchString=Excel”)
你还可以将ENCODEURL 函数与 WEBSERVICE 函数结合使用。 例如:
=WEBSERVICE(“http://xml.weather.yahoo.com/forecastrss/”&ENCODEURL(B2)&”_f.xml”)
备注
- 如果参数无法返回数据, 则 WEBSERVICE 返回 #VALUE! 错误。
- 如果参数导致字符串无效或包含超过32767个字符的允许的单元格限制, 则 WEBSERVICE 返回 #VALUE! 错误。
- 如果 url 是包含 GET 请求所允许的超过2048个字符的字符串, 则 WEBSERVICE 返回 #VALUE! 错误。
-
对于不受支持的协议 (如ftp://或File://), WEBSERVICE 返回 #VALUE! 错误。