zoukankan      html  css  js  c++  java
  • 微信小程序登录,获取code,获取openid,获取session_key

    微信小程序登录

    wx.login(Object object)

    调用接口获取登录凭证(code)。通过凭证进而换取用户登录态信息,包括用户的唯一标识(openid)及本次登录的会话密钥(session_key)等。用户数据的加解密通讯需要依赖会话密钥完成。

    code 换取 session_key

    这是一个 HTTPS 接口,开发者服务器使用登录凭证 code 获取 session_key 和 openid。其中 session_key 是对用户数据进行加密签名的密钥。为了自身应用安全,session_key 不应该在网络上传输。
    接口地址:
    https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code

    这个操作可以后台来调取,也可以前台来调取。

    public function get_openid(){
        $param = [
            'appid'     => $_GET['appid'],
            'secret'    => $_GET['secret'],
            'js_code'   => $_GET['js_code'],
            'grant_type'=> $_GET['grant_type']
        ];
        $url    = 'https://api.weixin.qq.com/sns/jscode2session?';
        $url    .= 'appid='.$param['appid'].'&secret='.$param['secret'].'&js_code='.$param['js_code'].'&grant_type='.$_GET['grant_type'];
        $result = json_decode(Http::doGet($url,300),true);
    
        $this->json->setAttr('data',$result);
        $this->json->Send();
    }
    
    {
        "errno": 0,
        "errdesc": "",
        "data": {
            "session_key": "WFFpxZkfvg0xPjZ6oI7YzA==",
            "openid": "ooBzj5Ot2GmNgty-tKtkT567aGiM"
        }
    }
    
  • 相关阅读:
    获取当前时区时间
    python lambda表达式详解
    Odoo 12开发之开发环境准备
    初步了解odoo12
    web前端面试题
    实现一个优先级队列
    面试题
    python读取和生成excel文件
    Django基础
    virtualenv
  • 原文地址:https://www.cnblogs.com/jiqing9006/p/10150223.html
Copyright © 2011-2022 走看看