刚开始调用微信小店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);
源码面前,了无秘密