javawebservice数组参数_LiveBOSWebservice传参类型为list
数组
昨天有使⽤soap传输数据到Webservice,其中字符串类型的都已经传输成功,但是有⼏个参数传输失败,java服务器端收到的空值。
因为我是php的,然后接收端是java制作的,其中有⼏个参数是list数组类型的,我刚开始将php的数组传过去,服务端接收到的是空,然后再使⽤json格式还是不⾏。后来去询问java同事,他们说list数组类型不像php⼀样是有键值和键名的,国外java php
java的list数组是只有name和value对应关系,如下所⽰
$arr = array('userid'=>1,'name'=>'张三',params=>arrary(array('name'=>'数组1','value'=>'值1'),'name'=>'数组2','value'=>'值2'));
将数组通过name和value对应关系后传输给java,java就能解析list数组进⾏存储。
__soapCall返回的是object类型的数组,可以先使⽤json_encode,然后再json_decode进⾏转换,变为数组格式进⾏分析判断。
到此为⽌,soap传输数据总算完成了。接下来就是⼀些细节对接问题。因为Webservice是有⽤户校验的,因此我需要先使⽤它们的登录⽅法进⾏登录,然后获取到对应的session值。为了避免不必要的重复登录步骤,因此我将此session值缓存下来,
放⼊到cash⽬录下,然后每次传输数据时都先取然后传输,如果session过期或者⽆效,根据返回的code判断然后再重新登录更新session 值。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。