kettle HTTPPOST请求webservice接口

1、因webservice请求我都是使用soapui进行请求的,所以先从soapui获取请求地址参数

kettle HTTPPOST请求webservice接口_第1张图片

 

2、导入数据流

  本例实例请求中的变化入参为电话号码,所以使用 CSV输入组件导入数据。(注:因对kettle不了解,刚刚使用,开始时把所有请求报文参数都组装好了,直接使用JS组件进行运行,发现根本没有发起请求,原来kettle是需要数据流或者记录生成进行驱动的,哈哈哈!)

3、增加常量

  webservice请求需要请求头,请求头使用“增加常量”组件导入。我第一次请求时,没有添加请求头,导致接口方返回no soapaction。但是使用soapui工具是能够正常调用的,所以使用了fiddler工具截取了soapui工具请求的报文,发现我这个接口的的soapaction为空,所在增加常量组件中增加了一个值为空的常量。(注:soapui有代理设置,如果Fiddler和soapui在本地,soapui的代理设置为127.0.01 端口为fiddler的代理端口,这样就截取soapui的请求报文)

kettle HTTPPOST请求webservice接口_第2张图片

4、组装请求报文

  增加javascript代码组件,定义如图,把请求封装在request变量中,直接使用String就可以,请求中需要变动的参数,直接从数据流中获取替换即可

kettle HTTPPOST请求webservice接口_第3张图片

 

5、使用http post组件进行webservice请求。

  URL为soapui的请求地址,Request entity field选择为JS代码组件组装的请求报文,Result field name填写为返回参数变量名称,默认为result。

  在Fields页面,Name选择增加常量组件中设置的请求头,Put in Header选择为是

kettle HTTPPOST请求webservice接口_第4张图片kettle HTTPPOST请求webservice接口_第5张图片

6、获取到请求结果,就可以用其他的组件对结果进行处理了。

 

转载于:https://www.cnblogs.com/heiboy/p/10032544.html

你可能感兴趣的:(json,数据库,javascript,ViewUI)