1.小程序js端调用框架登陆API,获取到一个临时code,拿着这个code去调用自己的服务端接口

2.在自己的服务器端,使用app_id app_secrect code可以获取到用户的openid,这个id是用户唯一的id并且不会改变,可以把这个id返回给小程序端
小程序端本地保存openid

3.获取用户信息很简单,并且不需要自己的服务器处理,只需要小程序端提供的API。
前端页面wxml使用一个按钮,按钮里增加几个属性,就可以回调到小程序js部分的方法上,并且带着用户的个人信息,如昵称 头像等

4.这个时候就可以把该用户的openid 和 昵称,头像,一块调用自己服务端接口,保存到数据库中

index.js

const app = getApp()Page({data: {openid:""},//按钮回调的方法getPerson:function(e){console.log(this.data.openid);console.log(e);},onLoad: function () {var self=this;wx.login({success(res) {//js调用登陆命令获取到codeif (res.code) {//通过code调用自己服务接口获取到openid
          wx.request({url: 'https://api.sopans.com/third/wxOpenId.php',data: {code: res.code},success:function(wxInfo){console.log(wxInfo);self.data.openid = wxInfo.data.openid}})} else {console.log('登录失败!' + res.errMsg)}}})},
})

index.wxml

<button open-type="getUserInfo" bindgetuserinfo="getPerson">获取用户信息</button>

        $appid = ''; // 小程序APPID$secret = ''; // 小程序secret$code=$_GET['code'];$url = 'https://api.weixin.qq.com/sns/jscode2session?appid=' . $appid . '&secret='.$secret.'&js_code='.$code.'&grant_type=authorization_code';    $curl = curl_init();curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);curl_setopt($curl, CURLOPT_TIMEOUT, 500);curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);curl_setopt($curl, CURLOPT_URL, $url);$res = curl_exec($curl);curl_close($curl);echo $res; // 这里是获取到的信息

转载于:https://www.cnblogs.com/taoshihan/p/11408746.html

[小程序]微信小程序登陆并获取用户信息相关推荐

  1. 微信小程序如何进行登录授权和获取用户信息

    微信小程序如何进行登录授权和获取用户信息

  2. Spring boot 项目(十三)——实现微信公众号授权登录获取用户信息

    引言 微信公众号开发中,必不可少的一环:公众号授权登录.获取微信用户信息 前期准备 内网渗透=>生成本地指定端口映射的外网域名 链接:内网渗透工具natapp使用详解 域名生成之后修改yml文件 ...

  3. 程序员如何更好地获取用户信息?

    作者 | 菜菜 责编 | 郭芮 YY妹:菜菜君,我又来啦.菜菜君,我又来啦菜菜君,我又来啦 菜菜:又有什么事吗? YY妹:我按照你说的已经把网站认证写完了,而且效果还不错. 菜菜:恭喜你,下次面试又多 ...

  4. java开发微信如何维护登录状态_5.13微信登录维护态与获取用户信息思想

    前言. 微信小程序的运行环境不是在浏览器下运行的.所以不能以cookie来维护登录态.下面我就来说说我根据官方给出的方法来写出的维护登录态的方法吧. 一.登录态维护 官方的文档地址:https://m ...

  5. 微信登录用wx.getUserProfile获取用户信息获取的是灰头像,用户名是微信用户, 怎么解决呢?

    这个原因是官方的问题,是有版本问题的,版本越高的话越拿不到头像啊.那个头像只能是一个匿名用户,除非你把那个测试版本降低才可以是获取到用户信息和头像. 现在新版本是不让获取用户头像,这个是跟那个腾讯官方 ...

  6. 微信公众号开发之获取用户信息

    微信获取用户信息的方式有两种,静默授权(无需用户同意)和非静默授权(需要用户" 手动点击 "拉取授权,可以用户无需关注公众号即可获取用户信息) 整体的代码请查看最后,前边为原理介绍 ...

  7. 企业微信内自创建app 获取用户信息问题

    为了防止自己健忘,从现在开始 每个学习阶段都会记录博客!! 获取用户信息第一步. 构造链接 https://open.weixin.qq.com/connect/oauth2/authorize? a ...

  8. 微信开发笔记——微信网页登录授权,获取用户信息

    开源源码下载,请参照csdn下载:  http://download.csdn.net/detail/kingmax54212008/9453082 最近做了一个公司的微信的公众号,对微信的流程清楚了 ...

  9. 微信公众号授权(获取用户信息)

    需要的工具: 微信公众号(可以申请,但做开发的,可以申请测试号,申请详细不多说了) 服务器(可以自行购买,我使用的是新浪的sae.) 编辑器(随意,不做推荐) 微信公众号开发文档(地址) !!!!!完 ...

最新文章

  1. 使用Jsonp实现跨域请求
  2. 向量空间和计算机科学与技术,向量空间
  3. Winform中使用MQTTnet实现MQTT的服务端和客户端之间的通信以及将订阅的消息保存到文件
  4. OpenStack的部署T版(九)——控制台部署
  5. Angular jasmine单元测试框架里spyOn的创建原理
  6. I/O多路转接之poll——基于TCP协议
  7. 日本原装进口雪平锅,煎炸炒煮全搞定,日本人用了 1000 年
  8. markdown 链接跳转到标题_我是如何使用 Vim 高效率写 Markdown 的
  9. skywalking使用方法_基于SkyWalking的监控系统安装与使用教程 PDF 下载
  10. 论文笔记 - 《ImageNet Classification with Deep Convolutional Neural Networks》 精典
  11. linux sed批量更改文件,Linux利用sed批量修改文件名(示例代码)
  12. 第 7 章 Neutron - 072 - 详解 ML2 Core Plugin(II)
  13. java保龄球计分_TDD练习:保龄球计分
  14. 八六、Linux 服务器+Nginx服务简介
  15. 解压缩报错tar: Error is not recoverable: exiting now
  16. 参加国企面试需要注意的点有哪些?
  17. 日本語のまとめ(入门班)
  18. English trip V1 - 10.Family Ties 家庭关系 Teacher:Emily Key: Possessive s (所有格 s)
  19. win10系统更新在哪_win10系统更新在哪
  20. 5G初级中级多选填空

热门文章

  1. html 表格_UiPath之发送正文包含表格的邮件(通过Html实现表格)
  2. java 缓存的简单实现_Java8简单的本地缓存实现
  3. c 和 java 差异_java和C/C++的差异是什么
  4. php 处理树形数据,php实现的树形结构数据存取类实例
  5. centos MySQL 双机_CentOS利用Keepalived构建双主MySQL+双机热备
  6. element vue 获取select 的label_Vue动态组件component的深度使用
  7. 【若依(ruoyi)】表格实现tooltip
  8. 建立数组并写入数据_Visual Studio 2010--C#跟西门子1200通讯(Sharp7)⑥--数据写入
  9. c5.0 java_机器学习-AdaBoosting及其Java实现
  10. 学而思的python课怎么样_有在用学而思网校的同学觉得孙墨漪老师怎么样?报她的课值得吗?...