微信网页授权snsapi_base,snsapi_userinfo区别和实现

微信开发文档有四部:

1 第一步:用户同意授权,获取code

2 第二步:通过code换取网页授权access_token、openid

3 第三步:刷新access_token(如果需要)

4 第四步:拉取用户信息(需scope为 snsapi_userinfo)

snsapi_base: 到第二步就结束了,获取到openid,其他操作在这个基础上(比如记录他信息)

snsapi_userinfo: 获取openid和用户资料(昵称、头像、国、省、城市、性别、权限)

public function getBaseInfo(){
//1、获取code
$appid = ‘wxe3ccbacbfd93fdeb‘;
$redirect_url = urlencode(‘http://wx.cnfxportal.com/index.php/Weixin/Index/getUserOpenId‘);
$url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=".$appid."&redirect_uri=".$redirect_url."&response_type=code&scope=snsapi_base&state=123#wechat_redirect";
header(‘location:‘.$url);
}

//获取用户openid
public function getUserOpenId(){
//2、获取网页授权的access_token
$appid = ‘wxe3ccbacbfd93fdeb‘;
$appsecret = ‘989b45dd6d2441ed01a5f59336ba2060‘;
$code = $_GET[‘code‘]; //从上面函数getBaseInfo获取得到
$url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret=".$appsecret."&code=".$code."&grant_type=authorization_code ";
//3、获取openid
$res = $this->http_curl($url);
var_dump($res); //里面便是有openid数据
}

时间: 2024-12-12 21:25:46

微信网页授权snsapi_base,snsapi_userinfo区别和实现的相关文章

微信网页授权snsapi_base、snsapi_userinfo的问题

微信网页授权SCOPE分为snsapi_base.snsapi_userinfo,前者是用户无感知的静默授权只能拿到openid:而后者需要用户确认,能拿到更多的用户信息. 我有一个系统需要进行网页授权,拿到用户信息. 方案1: 只使用snsapi_useinfo授权,并把用户信息保存到数据库,30天后就重新用进行snsapi_userinfo授权 弊端:实践发现很多用户换了头像,换了昵称,导致用户头像裂了,昵称对不上.增加授权频率又觉得用户体验不太好... 方案2: 用户进 行一次snsapi

微信网页授权access_token和普通access_token区别

access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需要使用access_token. 注意:是所有接口都需要使用 两者异同有效期:两者有效时间都是7200s.使用范围:通过网页授权获得的access_token,只能获取到对应的微信用户信息,与微信用户是一对一关系:而普通的access_token在有效期内可以使用,可以获取所有用户信息.次数限制:普通access_token每天获取最多次数为2000次,而网页授权的access_token获取次数没有限制.如何利用普通

微信网页授权获取用户基本信息

微信公众号可以通过微信网页授权机制,来获取用户基本信息,可以用于微信登录功能 关于网页授权的两种scope的区别说明 1.静默授权:以snsapi_base为scope发起的网页授权,是用来获取进入页面的用户的openid的,并且是静默授权并自动跳转到回调页的.用户感知的就是直接进入了回调页(往往是业务页面) 2.显示授权:以snsapi_userinfo为scope发起的网页授权,是用来获取用户的基本信息的.但这种授权需要用户手动同意,并且由于用户同意过,所以无须关注,就可在授权后获取该用户的

java微信开发API解析(七)-网页开发-微信网页授权

java微信开发API解析(七)-网页开发-微信网页授权 全局说明 * 详细说明请参考前两篇文章. 本文说明 本文主要完成获取用户基本信息的工作,包括(昵称.头像.地址.国家等基本信息) 对于snsapi_base和snsapi_userinfo我们只演示关于snsapi_userinfo.因为snsapi_userinfo更难,如果能够理解snsapi_userinfo,那么snsapi_base不在话下. 对于该部分(微信网页开发)我们只介绍如何获取用户基本信息,对于开发样式库,js-SDK

手把手实现微信网页授权和微信支付,附源代码(VUE and thinkPHP)

wechat github 概述 公众号开发是痛苦的,痛苦在好多问题开发者文档是没有提到的,是需要你猜的. 在开发过程中翻了好多的文档,都是说明其中的一部分问题的,很费时间,所以在此总结大体过程.我们模拟的是一个支付的商城,在实现购买过程中基本是把微信公众号最主要模块实现了,其余的功能我们没有涉及,但应该是触类旁通的. 我们叙述的过程是按开发流程进行叙述的,不会是按照开发文档的形式叙述,希望您能结合微信的开发文档一起阅读,当然在流程中我们会提醒你阅读的部分 目录 概述 [解决的问题] [前端技术

Java微信公众平台开发(十六)--微信网页授权(OAuth2.0授权)获取用户基本信息

转自:http://www.cuiyongzhi.com/post/78.html 好长时间没有写文章了,主要是最近的工作和生活上的事情比较多而且繁琐,其实到现在我依然还是感觉有些迷茫,最后还是决定静下心来坚持一开始的选择,继续我们的微信系列文章的后续更新,也希望在自己有时间的时候能把更多的内容呈现给大家,前面一系列的文章讲述了很多微信开发相关的基础知识点 [微信系列文章],那么从这一篇开始将讲述微信较深一层次或者说在产品应用中时刻会用到的一些技术点,那么下面就让我们进入正题吧,这一篇我要讲述的

微信网页授权认证获取用户的详细信息,实现自动登陆-微信公众号开发干货

原创声明:本文为本人原创作品,绝非他处转账,转载请联系博主 从接触公众号到现在,开发维护了2个公众号,开发过程中遇到很多问题,现在把部分模块功能在这备案一下,做个总结也希望能给其他人帮助 工欲善其事,必先利其器,先看看开发公众号需要准备或了解什么 web开发工具:官方提供的开发工具,使用自己的微信号来调试微信网页授权.调试.检验页面的 JS-SDK 相关功能与权限,模拟大部分 SDK 的输入和输出.下载地址:web开发工具下载 开发文档:https://mp.weixin.qq.com/wiki

微信网页授权

微信网页授权 1 以下位置是微信网页授权 2 登陆微信公众平台测试号,修改"网页授权获取用户基本信息"选项 3 定义授权页面,用户打开此页面,则会跳转到 redirect_uri/?code=CODE&state=STATE,可以获取到code https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx520c15f417810387&redirect_uri=https%3A%2F%2Fchong.qq.c

玩玩微信公众号Java版之六:微信网页授权

我们经常会访问一些网站,用微信登录的时候需要用到授权,那么微信网页授权是怎么一回事呢,一起来看看吧! 参考官方文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842 官方的文档有很详细的说明,这里就主要分析重要的几点: 第一,网页授权分类及说明: 1.以snsapi_base为scope发起的网页授权,是用来获取进入页面的用户的openid的,并且是静默授权并自动跳转到回调页的.用户感知的就是直接进入了回调页(往往