工行开发中msgId,是消息通讯唯一编号。
JAVA中,SDK自动生成msgId,具体规则如下(来源工行支持中心):
SDK支持自动生成msgId。以数据类型API为例,只需在SDK中调用时将client.execute(request, msgId)改为client.execute(request),即execute方法调用改为1个参数的方法。
使用示例:
页面类型API使用SDK时,调用实现类UiIcbcClient构造调用对象client的buildPostForm函数,msgId参数缺省,如下所示:
client.buildPostForm(request);
数据类型API使用SDK时,调用实现类DefaultIcbcClient构造调用对象client的execute函数,msgId参数缺省,如下所示:
response = client.execute(request);
PHP版:
$resp = $client->execute($request, 'msgId', '');//执行调用;msgId消息通讯唯一编号,要求每次调用独立生成,APP级唯一
除此之外,没有更多的资料。
function execute($request,$msgId,$appAuthToken){
execute函数有三个参数:r e q u e s t , request,request,msgId,$appAuthToken,如果按照JAVA只调用一个参数的话,授权令牌查询登录参数的时候,必然出错,因此必须自己动手生成msgId且唯一编号,调用独立生成.
$msgId = substr(md5(time() . mt_rand(1, 1000000)), 8, 13);
尚未对接工行测试环境,如果成功不再回头累叙。