剛開始調用微信小店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);