刚开始调用微信小店api的时候,可能大家会遇到问题。系统总是提示system error,归根结底还是发送的参数不正确。
下面给出几个调用例子:
例子写得不全。
<?php function cUrlRequest($url,$data = null){ $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); if (!empty($data)){ curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); } curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $output = curl_exec($curl); curl_close($curl); return $output; } //获取所有商品 function gStateProduct($state = 0,$token){ //https://api.weixin.qq.com/merchant/getbystatus?access_token=ACCESS_TOKEN //{"status": 0} // $AccessToken = "xxxxxxxx"; $url = "https://api.weixin.qq.com/merchant/getbystatus?access_token=".$token; //print_r($this->AccessToken); $ResData = cUrlRequest($url,‘{"status": ‘.$state.‘}‘); //特别注意这里,这个是json格式的。 echo "<pre>"; print_r( json_decode($ResData) ); } //获得所有分组 function getAllCategory($state = 0,$token) { $url = "https://api.weixin.qq.com/merchant/group/getall?access_token=".$token; $ResData = cUrlRequest($url,‘{"status": ‘.$state.‘}‘); echo "<pre>"; print_r( json_decode($ResData) ); } //根据分组id来获得商品信息 function getProductByGroudid($state = 0,$token) { $url = "https://api.weixin.qq.com/merchant/group/getbyid?access_token=".$token; $ResData = cUrlRequest($url,‘{"group_id": ‘.$state.‘}‘); echo "<pre>"; print_r( json_decode($ResData) ); } //获取accesstoken function getAccessToken() { $appid = "your appid"; $appsecret = "your appsecret"; $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$appsecret; $result = cUrlRequest($url); $jsoninfo = json_decode($result, true); $access_token = $jsoninfo["access_token"]; return $access_token; } //根据product_id来获取单个商品 function getOneProductByid($state = 0,$token) { $url="https://api.weixin.qq.com/merchant/get?access_token=".$token; $ResData = cUrlRequest($url,‘{"product_id": "‘.$state.‘""}‘); echo "<pre>"; print_r( json_decode($ResData) ); } $AccessToken=getAccessToken(); //gStateProduct(1,$AccessToken); //getAllCategory(1,$AccessToken); //getProductByGroudid(207061749,$AccessToken); getOneProductByid("pf82VwN45zr8eOlur5mAiSTjg8WU",$AccessToken);