微信小程序获取openid和session_key并且把openid存入数据库
微信小程序开发交流qq群 581478349
微信小程序获取openid和session_key并且把openid存入数据库。已经调用openid的demo
前后端代码都有,后端php实现
在其它地方同步调用openid。(确保用户完成登录再进行后续的操作);
onLoad:function(options){ getApp().promise.then(resolve => {var url = app.url + '/api/v1/Room/UserInfo'util.request(url, 'post', {name: userInfo.nickName,avatarUrl: userInfo.avatarUrl,accid: wx.getStorageSync('accid')}, '', function (res) {wx.redirectTo({url: '/pages/home/home'})})})
}
小程序代码,获取openid,并且做同步的阻塞。
//app.js
var util = require('utils/util.js');
App({onLaunch: function() {this.url = 'http://127.0.0.1/smile_chatRoom/'var that = this;return that.promise = new Promise(function(resolve) {wx.login({success: function(res) {var data = {code: res.code}if (res.code) {//发起网络请求var url = that.url + '/login.php';util.request(url, 'POST', data, '', function(res) {console.log(res);that.openid = res.data.openid;wx.setStorageSync('openid', that.openid)resolve(that.openid);}, function(err) {console.log(err);})} else {console.log('登录失败!' + res.errMsg)}}});})}
})
php 代码
<?phpheader("Content-Type:text/html;charset=utf8"); header("Access-Control-Allow-Origin: *"); //解决跨域header('Access-Control-Allow-Methods:POST');// 响应类型 header('Access-Control-Allow-Headers:*'); // 响应头设置 $link=mysql_connect("localhost","root","root"); mysql_select_db("smile", $link); //选择数据库mysql_query("SET NAMES utf8");//解决中文乱码问题$code = $_POST['code'];$url='https://api.weixin.qq.com/sns/jscode2session?appid=wxfc20b2db0701ad17&secret=ffb74c8eb3f19699ec7f70861b8387ce&js_code='.$code.'&grant_type=authorization_code';$json = file_get_contents($url);//只返回openid,json是一个json对象$array = json_decode($json,TRUE);$obj = json_decode($json);$openid = $obj->openid;$q = "SELECT * FROM user"; //SQL查询语句 SELECT * FROM 表名$result = mysql_query("SELECT * FROM userWHERE openid='$openid'");$num=mysql_num_rows($result); //获取行数if($num>0){}else{//插入数据到数据库 $strsql = "insert into user (openid) values('$openid')";//mysql_query() 函数执行一条 MySQL 查询。SELECT,SHOW,EXPLAIN 或 DESCRIBE 都需要用这个函数执行$result = @mysql_query($strsql);}echo $openid;
?>
微信小程序获取openid和session_key并且把openid存入数据库相关推荐
- 从微信服务器获取用户信息,微信小程序Ⅴ [获取登陆用户信息,重点openID(详解)]...
♩ 背景 其实这篇文章几个月前就写完了,可是这段时间,微信小程序官方文档有了更新,同事在我本身的实际操做过程当中,发现以前写的过于繁杂,因此如今进行简化梳理,欢迎指摘. 语言框架:ThinkPHP3. ...
- 微信小程序Ⅴ [获取登录用户信息,重点openID(详解)]
♩ 背景 其实这篇文章几个月前就写完了,但是这段时间,微信小程序官方文档有了更新,同事在我自己的实际操作过程中,发现之前写的过于繁杂,所以现在进行简化梳理,欢迎指摘. 语言框架:ThinkPHP3.2 ...
- 微信小程序获取其从属关联公众号openid的思路
间隔很长时间之后的第一篇博客 最近做的关于微信公众号和小程序的项目比较多,这里先写一下如何通过微信公众号关联的小程序的openid获取其微信公众号的openid,以完成推送消息模板之类的操作,相反操作 ...
- 小程序获取sessionkey_微信小程序 获取session_key和openid的实例
微信小程序 获取session_key和openid的实例 说说获取session_key和openid的条件 1.AppID(小程序ID); 2.AppSecret(小程序密钥); 3.登录时获取c ...
- 微信小程序获取openid失败
解决微信小程序获取openid失败问题 安装node https://nodejs.org/en/download/ 右键云函数,在内建终端打开 npm install --save wx-serve ...
- 微信公众号和微信小程序获取OPENID的方法
无论是微信小程序还是微信公众号获取OPENID都需要先获取code 获取code String url = "https://open.weixin.qq.com/connect/oauth ...
- .Net之微信小程序获取用户UnionID
前言: 在实际项目开发中我们经常会遇到账号统一的问题,如何在不同端或者是不同的登录方式下保证同一个会员或者用户账号唯一(便于用户信息的管理).这段时间就有一个这样的需求,之前有个客户做了一个微信小程序 ...
- 微信小程序获取带表情的微信名乱码问题
微信小程序获取带表情的微信名乱码问题 在后台获取完微信用户数据后,对微信名进行UTF-8编码 URLEncoder.encode(nickName, "utf-8") ,将编码后的 ...
- 微信小程序获取手机号登录流程
微信小程序获取手机号登录流程 首先前端使用wx.login 获取code wx.login({success(res) {if (res.code) {that.setData({code: res. ...
最新文章
- 95行代码实现最大熵模型训练
- Last_Error: Relay log read failure: Could not parse relay log event entry.
- mysql出现unblock with 'mysqladmin flush-hosts'
- python怎么实现检验_python 怎么实现数据串进行 BCC 校验 (Block Check Character/ 信息组校验码)?...
- boost :: dynamic_bitset时序测试
- SP703 SERVICE - Mobile Service[DP]
- python初学者怎么找工作_学python找工作好找吗
- SpringMVC简单小案例
- android详细解释键盘和鼠标事件
- bootstrape实战案例_bootstrap 实战入门教程(一)
- 配置OpenShift 4 单机版环境 - CodeReady Container
- pp2使用需要java_新GRE模考软件POWERPREP2安装和使用说明(图解)
- AI进入制造业 节省人工成本也能提高产品性能
- Android TeaPickerView数据级联选择器
- 信捷plc485通信上位机_常用通信接口汇总
- 在计算机excel上怎么求sin值,Excel中使用sin函数计算的操作技巧
- 计算机win7怎么更改前后面板,解决机箱前置面板没声音(xp/win7图文教程)
- Sql学习04(11.23-11.24)
- (十)苏世民:我的经验和教训:掌控(1~6)
- 两个和尚的故事【摘】