微信自动获取收货地址api程序

作者:袖梨 2022-06-24


关于接口的说明我就不介绍了,在官方可以看到下面只看处理程序

public function get_address_api(){
 $APPID=C('APPID');
 $SCRETID=C('SCRETID');
 if (!isset($_GET['code']))
 {
 $backurl = $this->get_url();
$url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$APPID."&redirect_uri=".urlencode($backurl)."&response_type=code&scope=jsapi_address&state=123#wechat_redirect"; // snsapi_userinfo
Header("Location: $url");
exit;
}else
{
$code = $_GET['code'];
$url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$APPID."&secret=".$SCRETID."&code=".$code."&grant_type=authorization_code";
$re = file_get_contents($url);
$rearr = json_decode($re,true);
$backurl = $this->get_url();
$openid = $rearr['openid'];
$unionid = $rearr['unionid'];
$asstoken = $rearr['access_token'];
S('jsapi_address_token'.$openid,$asstoken,7200);
 
$data['appid']=$APPID;
$data['url']=$backurl;
$data['timestamp']=time();
$data['timestamp']= (string)($data['timestamp']);
$data['noncestr']=$this->getRandStr(10);
$data['accesstoken']=$asstoken;
 
foreach ($data as $k => $v)
 {
 $Parameters[$k] = $v;
 }
 //签名步骤一:按字典序排序参数
 ksort($Parameters);
 $String = $this->formatBizQueryParaMap($Parameters, false);
$data['addrsign']=SHA1($String);
$this->assign('data',$data);
 
}
 
$this->siteDisplay('address_api');
 
}

相关文章

精彩推荐