前言从聚合数据官网的接口文档可以看出,调用国违直连查询一般需要两步获取支持的城市参数接口,即获取所需参数的长度规则不同城市请求违章查询接口。即获取车辆的违章记录获取支持的城市参数接口。我们以无锡市为例。代码部分'JS',//你申请的接口调用Key'key'=>'你申请的接口调用Key',];$paramsString=http_build_query($params);//发起接口网络请求$response=null;try{$response=juheHttpRequest($apiUrl,$paramsString,1);}catch(Exception$e){var_dump($e);//这里根据自己的需要进行自己的异常处理}if(!$response){回声“请求例外”。PHP_EOL;}$result=json_decode($response,true);if(!$result){echo"请求异常".PHP_EOL;}$errorCode=$result['error_code'];if($errorCode===0){$data=$result['result']['JS']['citys'];foreach($dataas$v){if($v['city_name']=='无锡'){echo'做你需要一个VIN:'。($v['class']==1?'是':'否')。PHP_EOL;echo'是否需要引擎编号:'.($v['engine']==1?'是':'否')。PHP_EOL;echo'所需的VIN长度:'.$v['类号']。PHP_EOL;echo'不需要引擎编号长度:'.$v['engineno'].PHP_EOL;休息;}}}else{//请求异常echo"请求异常:{$errorCode}_{$result["reason"]}".PHP_EOL;}/***发起网络请求函数*@paramstring$url请求的URL*@parambool$params请求的参数内容*@paramint$ispost是否发布请求*@returnbool|string返回内容*/functionjuheHttpRequest($url,$params=false,$ispost=0){$httpInfo=[];$ch=curl_init();curl_setopt($ch,CURLOPT_HTTP_VERSION,CURL_HTTP_VERSION_1_1);curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0(WindowsNT10.0;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/41.0.2272.118Safari/537.36');curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,3);curl_setopt($ch,CURLOPT_TIMEOUT,12);curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);如果($ispost){curl_setopt($ch,CURLOPT_POST,true);curl_setopt($ch,CURLOPT_POSTFIELDS,$params);curl_setopt($ch,CURLOPT_URL,$url);}else{if($params){curl_setopt($ch,CURLOPT_URL,$url.'?'.$params);}else{curl_setopt($ch,CURLOPT_URL,$url);}}$response=curl_exec($ch);if($response===FALSE){//echo"cURLError:".curl_error($ch);返回false;}$httpCode=curl_getinfo($ch,CURLINFO_HTTP_CODE);$httpInfo=array_merge($httpInfo,curl_getinfo($ch));curl_close($ch);return$response;}输出:是否需要VIN:是是否需要引擎:是VIN长度:6是否有必要?Enginenumberlength:6所以我们知道无锡的查询规则要求VIN和enginenumber都在后6位。请求非法查询接口代码部分:'苏B62***',//引擎号'engineno'=>'引擎号',//车架号'classno'=>'车架号',//你申请的接口调用Key'key'=>'你申请的接口调用密钥',];$paramsString=http_build_query($params);//发起接口网络请求$response=null;try{$response=juheHttpRequest($apiUrl,$paramsString,1);}catch(Exception$e){var_dump($e);//这里根据自己的需要进行自己的异常处理}if(!$response){echo"请求异常".PHP_EOL;}$result=json_decode($response,true);if(!$result){echo"请求异常".PHP_EOL;}$errorCode=$result['error_code'];if($errorCode===0){echo"请求成功:".PHP_EOL;$data=$result['result']['lists'];foreach($dataas$v){echo'违规时间:'.$v['日期'].PHP_EOL;echo'违规位置:'.$v['area'].PHP_EOL;回声“违规:”。$v['行动'].PHP_EOL;echo'违规代码:'.$v['代码']。PHP_EOL;echo'违规点:'.$v['芬']。PHP_EOL;echo'违规罚款:'.$v['金钱'].PHP_EOL;echo'违规城市:'.$v['wzcity'].PHP_EOL;echo'----------------------------------'.PHP_EOL;}}else{//请求异常echo“请求异常:{$errorCode}_{$result["reason"]}”。PHP_EOL;}/***发起网络请求函数*@paramstring$url请求URL*@parambool$params请求参数内容*@paramint$ispost是否POST请求*@returnbool|string返回内容*/functionjuheHttpRequest($url,$params=false,$ispost=0){$httpInfo=[];$ch=curl_init();curl_setopt($ch,CURLOPT_HTTP_VERSION,CURL_HTTP_VERSION_1_1);curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0(Windows)NT10.0;WOW64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/41.0.2272.118Safari/537.36');curl_setopt($ch,NECTTIMEOUT,CON;curl_setopt($ch,CURLOPT_TIMEOUT,12);curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);如果($ispost){curl_setopt($ch,CURLOPT_POST,true);curl_setopt($ch,CURLOPT_POSTFIELDS,$params);curl_setopt($ch,CURLOPT_URL,$url);}else{if($params){curl_setopt($ch,CURLOPT_URL,$url.'?'.$params);}else{curl_setopt($ch,CURLOPT_URL,$url);}}$response=curl_exec($ch);if($response===FALSE){//echo"cURLError:".curl_error($ch);returnfalse;}$httpCode=curl_getinfo($ch,CURLINFO_HTTP_CODE);$httpInfo=array_merge($httpInfo,curl_getinfo($ch));curl_close($ch);return$response;}输出:请求成功:违规时间:2020-09-2714:03:00违规地点:栅银路进入银澳东路向东约30米违规行为:违规代码:1102E违规积分:1违规罚款:0违规城市:上海---------------------------------违规时间:2020-09-2419:38:00违规地点:盛德路违规行为:机动车车辆违规停放,临时停车妨碍其他车辆和行人,且驾驶员不在现场违规代码:10393违规处罚:0违规罚款:50违规所在城市:江苏----------------------------------
