微信通过网页获取用户openid

参考微信官方文档:http://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.html

首先确定有权限并且填写授权域名:

https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx1ce02f66d2c97b40&redirect_uri=http%3a%2f%2fzy62.com%2fwx.php&scope=snsapi_base&response_type=code&state=123#wechat_redirect

关于特殊场景下的静默授权

1、上面已经提到,对于以snsapi_base为scope的网页授权,就静默授权的,用户无感知;
2、对于已关注公众号的用户,如果用户从公众号的会话或者自定义菜单进入本公众号的网页授权页,即使是scope为snsapi_userinfo,也是静默授权,用户无感知。

具体而言,网页授权流程分为四步:

1、引导用户进入授权页面同意授权,获取code
2、通过code换取网页授权access_token(与基础支持中的access_token不同)
3、如果需要,开发者可以刷新网页授权access_token,避免过期
4、通过网页授权access_token和openid获取用户基本信息(支持UnionID机制)

注意:snsapi_base需要用户关注该账号才可

参数 是否必须 说明

appid 是 公众号的唯一标识

redirect_uri 是 授权后重定向的回调链接地址,请使用urlencode对链接进行处理

response_type 是 返回类型,请填写code

scope 是 应用授权作用域,snsapi_base (不弹出授权页面,直接跳转,只能获取用户openid),snsapi_userinfo (弹出授权页面,可通过openid拿到昵称、性别、所在地。并且,即使在未关注的情况下,只要用户授权,也能获取其信息)

state 否 重定向后会带上state参数,开发者可以填写a-zA-Z0-9的参数值,最多128字节

#wechat_redirect 是 无论直接打开还是做页面302重定向时候,必须带此参数

<?php
//print_r($_GET);exit();
$code=$_GET[‘code‘];//获取code
//exit($code);
$url=‘https://api.weixin.qq.com/sns/oauth2/access_token?appid=wx1ce02f66d2c97b40&secret=cd0168358db924fac96b982c3bd2beb1&code=‘.$code.‘&grant_type=authorization_code‘;//通过code换取网页授权access_token
$str=file_get_contents($url);
$arr=json_decode($str,true);
//print_r($arr);
$openid=$arr[‘openid‘];
$str=file_get_contents(‘https://api.weixin.qq.com/cgi-bin/user/info?access_token=uHYAY1cNmaoA0iG--5Y428RTtwlu6nLOA91-xwT1CIy17keSv3jdT1gTJyNXzvtoGCT7GRqDKzRWMqzrPtqGNHDBpe16gguYZGOhCFsoyNI&openid=‘.$openid.‘&lang=zh_CN‘);//获取用户信息
$arr=json_decode($str,true);
//print_r($arr);
$img=$arr[‘headimgurl‘];//用户头像
echo ‘<img src="‘.$img.‘"/>‘;
时间: 2024-10-12 15:23:39

微信通过网页获取用户openid的相关文章

微信公众平台网页获取用户OpenID方法

下面我们一起来看看关于微信公众平台网页获取用户OpenID方法,有需要了解的朋友可以一起来看看吧.用户点击微信自定义菜单view类型按钮后,微信客户端将会打开开发者在按钮中填写的url值 (即网页链接),达到打开网页的目的,但是view不能获取用户的openid,需要使用微信“网页授权获取用户基本信息”高级接口结合使用,获得用户的登入个人信息.具体方法1.配置网页授权回调域名,如 www.111cn.net2.模拟公众号的第三方网页,http://www.111cn.net/getcodeurl

java 获取微信 页面授权 获取用户openid

先调用微信的地址 跳转https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx4b4009c4fce00e0c&redirect_uri=这里填写你要跳到请求页面授权域名l&response_type=code&scope=snsapi_base&state=123#wechat_redirect 返回redirect_uri/?code=""&status=""

微信小程序 获取用户openid

1,可以在小程序app.js入口文件中放入登录代码 wx.login({ success: res => { // 登录注册接口 if (res.code) { // 调用服务端登录接口,发送 res.code 到服务器端换取 openId, sessionKey, unionId并存入数据库中 } else { console.log('登录失败!' + res.errMsg) } } }); 2,服务端PHP,小程序获取openid接口 // 获取openid function getOpe

微信空白页获取用户openid

http://192.168.1.89:8088/cs.aspx 这整个一套才能获取到code值. 原文地址:https://www.cnblogs.com/Ly426/p/9524330.html

微信快速开发框架V2.3--增加语音识别及网页获取用户信息(八),代码已更新至Github

不知不觉,版本以每周更新一次的脚步进行着,接下来应该是重构我的代码及框架的结构,有朋友反应代码有点乱,确实如此,当时写的时候只是按照订阅号来写的,后来才慢慢增加到支持API接口.目前还在开发第三方微信平台,旨在使用户能够无需自己开发就能简易搭建微信平台. 更新内容 1.增加支持语音识别 2.增加"网页授权获取用户基本信息" 语音识别其实是对Voice信息的一个扩展,您必须启用语音识别功能,启用后会在VoiceMessage中增加一个Recongnition字段,我们可以判断这个字段的内

微信公众平台开发(106) 网页获取用户地理位置

关键字:微信公众平台 JSSDK 获取地理位置接口 网页获取用户地理位置 getLocation作者:方倍工作室 原文:http://www.cnblogs.com/txw1958/p/weixin-web-location.html 在这篇微信公众平台开发教程中,我们将介绍如何在网页中获取用户的地理位置信息. 本文分为以下二个部分: 生成JS-SDK权限验证签名 使用地理位置接口获取坐标 一.微信JS-SDK 1. 获得Access Token access token的获得方法在前面有介绍,

微信小程序-获取用户信息和openid,session_key,

1:微信小程序获取用户信息:比如常用的 avatarUrl (用户头像),nickName (用户名称) 等等, (1):获取用户信息调用 wx.getUserInfo 代码如下: 直接请求接口就可以了,随后把数据存放到storage中,下次直接取 就不用再请求接口,, 2:获取 openid (1):请求wx.login 接口,代码如下: url:是微信提供的 appid:是小程序的appid secret:是小程序开发设置的 AppSecret 只要获取到这两项,用户信息可以用于页面,ope

微信开发--获取用户openID

<?php//获取用户openid //公众号配置跳转至该页面 //https://mp.weixin.qq.com/advanced/selfmenu?action=index&t=advanced/menu-setting&token=1089922883&lang=zh_CN$appid="";$appsecret="";// $client_credential=client_credential;$url="http

微信公众号获取用户信息致跳过的坑

有一段时间没有搞微信开发了 ,今天突然要改一下程序! 回头一看 微信的帮助文档太tm的稀烂的,太难懂了,这做个笔记以后看着方便 微信有2个ACCESS_TOKEN, 1,基础接口的token 获取接口是 https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET 2,用户网页授权access_token 获取接口地址是 https://api.weixin