isuansuan

code2accessToken

登录凭证校验,通过 wx.login() 接口获得临时登录凭证 code 后传到开发者服务器调用此接口完成登录流程。更多使用方法详见 小程序登录

请求地址

GET https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code

wxml页面

<button open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo></button>

js页面

bindGetUserInfo:function(e){

console.log(e)

  wx.login({

success:res=>{

// ------ 获取凭证 ------
var code = res.code;
console.log(code);
// console.log(\'获取用户登录凭证:\' + code);
if(code){
// ------ 发送凭证 ------
app.util.request({
  "url":"entry/wxapp/GetUid",
 data:{
   code:code
},
method:\'POST\',
header:{
  "content-type":\'application/json\'
},
success:function(res){
    console.log(res)
if (res.statusCode == 200) {
// console.log("获取到的openid为:" + res.data)
// that.globalData.openid = res.data
wx.setStorageSync(\'openid\', res.data)
} else {
console.log(res.errMsg)
}
}
})
}

}

})

}

wxapp.php

// 用户授权

//获取用户信息
public function doPageTyMember() {
global $_GPC, $_W;
$uniacid = $_W[\'uniacid\'];
$openid = $_REQUEST[\'openid\'];
$item[\'u_name\'] = $_GPC[\'u_name\'];
$item[\'u_thumb\'] = $_GPC[\'u_thumb\'];
$item[\'uniacid\'] = $uniacid;
if ($openid) {
$res = pdo_update(\'hyb_ylxc_userinfo\', $item, array(\'openid\' => $openid));
}
if (!$res[\'u_id\']) {
$res = pdo_fetch(\'SELECT `u_id` FROM \' . tablename(\'hyb_ylxc_userinfo\') . " where `openid`=\'{$openid}\'");
}
$message = \'success\';
$errno = 0;
return $this->result($errno, $message, $item);
}
public function doPageGetUid() {

global $_GPC, $_W;
$uniacid = $_W[\'uniacid\'];
$result = pdo_fetch(\'SELECT * FROM \' . tablename(\'hyb_ylxc_key\') . " where `uniacid`=\'{$uniacid}\'");
$APPID = "wxbcf230862644aa93";
// $APPID = $result[\'appid\'];
// $SECRET = $result[\'appsecret\'];
$SECRET = "1ad4414c9da569ca333d216cc6d0f643";
$optionid = "oiw7_0FlOxmb4SmYHwT7K0rBdCnY";
$code = trim($_GPC[\'code\']);
$url = "https://api.weixin.qq.com/sns/jscode2session?appid={$APPID}&secret={$SECRET}&js_code={$code}&grant_type=authorization_code";
$data[\'userinfo\'] = json_decode($this->httpGet($url));
$openid = $data[\'userinfo\']->openid;
$item[\'openid\'] = $openid;
if ($openid) {
$res = pdo_fetch(\'SELECT `u_id` FROM \' . tablename(\'hyb_ylxc_userinfo\') . " where `openid`=\'{$openid}\'");
if (!$res[\'u_id\']) {
$res = pdo_insert(\'hyb_ylxc_userinfo\', $item);
}
}
$data[\'openid\'] = $openid;
$message = \'success\';
$errno = 0;
return $this->result($errno, $message, $data);
}

分类:

技术点:

相关文章: