位置: IT常识 - 正文

微信小程序获取用户openid(微信小程序获取手机号失败)

编辑:rootadmin
微信小程序获取用户openid 小程序端直接获取:

推荐整理分享微信小程序获取用户openid(微信小程序获取手机号失败),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:微信小程序获取手机号失败,微信小程序获取地理位置,微信小程序获取地理位置失败,微信小程序获取地理位置,微信小程序获取地理位置,微信小程序获取手机号,微信小程序获取手机号,微信小程序获取手机号上限怎么办,内容如对您有帮助,希望把文章链接给更多的朋友!

实现代码:直接简单

wx.login({ success(res) { if (res.code) { //发起网络请求 wx.request({ //这里填你自己的appid 和 wxspSecret url: "https://api.weixin.qq.com/sns/jscode2session?appid=" + wxspAppid+"&secret=" + wxspSecret + "&js_code=" + res.code + "&grant_type=authorization_code" , method: "POST", success(res){//获取成功要执行的动作}, fail(data){//失败要执行的动作 } }) } else {console.log('登录失败!' + res.errMsg)} } })

问题: 前端直接暴露appid和appsecret

最开始使用这种方式,到了小程序发布的阶段,因为直接暴露自己的appid和appsecret在前端,经过反编译小程序会直接获取到你的这些信息,并且不改的话也发布不了。。。之后就改成云函数获取了

云函数获取oppenid

方便并且没有暴露信息的风险:

微信小程序获取用户openid(微信小程序获取手机号失败)

步骤1:创建云函数

打开云开发控制台: 选择云函数,创建一个函数,函数名为get

步骤2:建立一个云函数,命名为刚刚的get

步骤3: index.js

// 云函数入口函数exports.main = async (event, context) => { const wxContext = cloud.getWXContext() console.log("OPENID",wxContext.OPENID); return { event, openid: wxContext.OPENID, appid: wxContext.APPID, unionid: wxContext.UNIONID, }}

config.json

{ "permissions": { "openapi": [ ] }}

在你需要获取的地方直接调用即可,比如在app.js中

getOpenid() { let that = this; wx.cloud.callFunction({ name: 'get', complete: res => { //你想要完成的功能,比如存储openid到全局 that.globalData.openid = res.result.openid; } }) },

上线两个星期左右,云函数收费了。。。 后面还是使用后端完成openid的获取

后端获取openid小程序端wx.login({ success(res) { if (res.code) { //发起网络请求 wx.request({ url: "你的接口"+res.code, method: "POST", success(res){//成功后的逻辑处理 } }) } else { wx.showToast({ title: '出现错误', icon: 'fail', duration: 5000 }) console.log('出现错误!' + res.errMsg) } } })后端(springboot)@PostMapping("你的接口") public Response decodeOpenid(HttpServletResponse response, @RequestParam String code){ response.setContentType("text/html;charset=UTF-8"); response.setCharacterEncoding("utf-8"); String wxspAppid = "你的appid"; String wxspSecret = "你的密钥"; try { Map<String, String> map = new HashMap<>(); // 授权(必填)固定 String grant_type = "authorization_code"; // 发送请求 String res = HttpRequest.post("https://api.weixin.qq.com/sns/jscode2session") .form("appid",wxspAppid) .form("secret",wxspSecret) .form("js_code",code) .form("grant_type",grant_type) .execute().body(); // 解析相应内容(转换成json对象) JSONObject json = JSONObject.parseObject(res); log.info("解析code请求结果:"+json.toString()); //获取openid String openid = json.getString("openid"); log.info("openid:"+openid); return Response.success(openid); } catch (Exception e) { e.printStackTrace(); return Response.fail("openId生成失败"); } }

需要导入hutools工具包和slf4j的依赖

ps: 微信小程序如果要发布的话是需要进行域名购买和备案的,以及后端https的配置。

本文链接地址:https://www.jiuchutong.com/zhishi/300431.html 转载请保留说明!

上一篇:万字长文:Stable Diffusion 保姆级教程(万字长文护国安是谁写的)

下一篇:深度学习参数初始化(二)Kaiming初始化 含代码

  • 微信收款声音怎么设置(微信收款声音怎么开)

    微信收款声音怎么设置(微信收款声音怎么开)

  • 华为手机远程锁定后可以被解开吗(华为手机远程锁定后怎么刷机)

    华为手机远程锁定后可以被解开吗(华为手机远程锁定后怎么刷机)

  • 苹果手机12上市了吗(苹果手机12上市时间)

    苹果手机12上市了吗(苹果手机12上市时间)

  • 电脑重装系统后连不上打印机(电脑重装系统后无法连接网络)

    电脑重装系统后连不上打印机(电脑重装系统后无法连接网络)

  • ipad可以做excel表吗(ipad2020能做excel)

    ipad可以做excel表吗(ipad2020能做excel)

  • 华为nova7屏幕材质(华为nova7屏幕材质好不好)

    华为nova7屏幕材质(华为nova7屏幕材质好不好)

  • 华为手机更新后白屏了怎么办(华为手机更新后开不了机怎么办)

    华为手机更新后白屏了怎么办(华为手机更新后开不了机怎么办)

  • vivox21双引擎闪充失效(vivox21双引擎闪充设置不见了)

    vivox21双引擎闪充失效(vivox21双引擎闪充设置不见了)

  • 苹果蓝牙打不开一直转(苹果蓝牙打不开怎么办)

    苹果蓝牙打不开一直转(苹果蓝牙打不开怎么办)

  • 为什么华为的运动耳机连不上手机(为什么华为的运行内存越来越少)

    为什么华为的运动耳机连不上手机(为什么华为的运行内存越来越少)

  • qq撤回消息对方知道吗(对方撤回了一条消息如何恢复)

    qq撤回消息对方知道吗(对方撤回了一条消息如何恢复)

  • 数码摄像机的工作原理是(数码摄像机的工作原理图)

    数码摄像机的工作原理是(数码摄像机的工作原理图)

  • 手机4g信号旁边hd怎么取消(手机4g信号旁边hd怎么关闭)

    手机4g信号旁边hd怎么取消(手机4g信号旁边hd怎么关闭)

  • 微信违规行为有哪些(微信出现违规行为有影响吗)

    微信违规行为有哪些(微信出现违规行为有影响吗)

  • 微信ipad和手机同时在线怎么设置(微信ipad和手机消息不同步怎么办)

    微信ipad和手机同时在线怎么设置(微信ipad和手机消息不同步怎么办)

  • word表格格式清除(word表格格式清楚)

    word表格格式清除(word表格格式清楚)

  • 小米手环可以连接华为吗(小米手环可以连蓝牙耳机听歌吗)

    小米手环可以连接华为吗(小米手环可以连蓝牙耳机听歌吗)

  • 手机上怎么设置无线路由器(手机上怎么设置门禁卡)

    手机上怎么设置无线路由器(手机上怎么设置门禁卡)

  • 小米手机怎么投屏到电视(小米手机怎么投屏到电脑笔记本)

    小米手机怎么投屏到电视(小米手机怎么投屏到电脑笔记本)

  • 小米旗舰机是哪些(小米旗舰机是哪个系列的手机)

    小米旗舰机是哪些(小米旗舰机是哪个系列的手机)

  • 微信怎么查认识天数(微信在哪里加好友)

    微信怎么查认识天数(微信在哪里加好友)

  • 栈的运算遵循什么原则(栈的运行)

    栈的运算遵循什么原则(栈的运行)

  • 淘集集和淘宝一样吗(淘集集是不是下架了)

    淘集集和淘宝一样吗(淘集集是不是下架了)

  • 电子税务局能查到个税申报信息吗
  • 增值税专用发票的税率是多少啊
  • 公司账户转账给个人怎么合理避税?
  • 一般纳税人是什么型企业
  • 投资收益免征企业所得税
  • 网上增值税申报表怎么填
  • 收回已核销的坏账什么意思
  • 设备租赁合同需要审核吗
  • 预算外收入计入什么科目
  • 收款凭证与收据的效力
  • 如何简单区分坏人和坏人
  • 公司出差是自己先垫付再报账吗
  • 社保企业二次扣款怎么扣
  • 股权转让个税是转让方交吗
  • 培训费的进项需要转出吗
  • 更换金税盘后数据能恢复么
  • 国家税务金税四期
  • 本月应该确认收入,但是一般下月才开票该怎么处理?
  • 一般纳税人从小规模纳税人取得专用发票
  • 收到房租发票可以抵扣吗
  • 存货清查的账务处理的阐述
  • 找私人买东西不发货算诈骗吗
  • 本月销项大于进项
  • 餐饮业代金券怎么用
  • 对境外捐赠的相关政策
  • 有关于秋天的诗句
  • linux killall
  • 收到投资分红怎么做账务处理?
  • php安装部署
  • 驾校收入与成本的关系
  • 递延所得税资产账务处理
  • 应收账款怎么做分录
  • php odbc
  • zmweb.exe是什么进程
  • 出口企业增值税怎么算
  • 单位交社保是不是比个人交社保以后退休金要多
  • igfxem.exe是什么进程
  • 酒店行业存货周转率多少合适
  • 公共基础设施的英语
  • 短视频小程序源码
  • php数组函数有哪些
  • 2023前端面试题目100及最佳答案
  • 朴素贝叶斯算法
  • 自动驾驶 模块
  • web前端开发html代码
  • dos命令怎么转到d盘
  • 盈余公积弥补以前亏损分录
  • 应交增值税一般是多少
  • 注解注入
  • 税种分类及其税率
  • protobuf 文档
  • mongodb重置密码
  • 公司没有收入怎么办
  • 企业实收资本与实缴资本
  • 以前年度费用退回
  • 服务不动产和无形资产本期数,第19栏
  • 安装固定资产所消耗的材料费和人工费属于什么会计科目
  • 购置固定资产支出怎么算
  • 外贸企业需要取得什么资质
  • 以现金支付办公用品费440元
  • 会计帐本分为哪几类
  • sql必会知识
  • sqlserver获取年月日
  • 简单基是什么
  • win7系统IE浏览器打开跳转到360浏览器,怎么阻止
  • win7关机快捷键设置
  • Win7系统怎么打开蓝牙
  • winpe 系统还原
  • nodejs formidable
  • android:scaletype="centercrop"
  • 转换什么
  • python基础教程视频教程
  • javascript文本框获得焦点
  • jquery实现轮播图步骤
  • android打包v1v2
  • 稽查查补税款享受增值税免税优惠吗
  • 小额贷款公司在职人员和离职人员情节哪种轻
  • 佛山顺德人才房申请条件
  • 梨树烧烤一条街打人
  • 税务备案表付汇日期是否可以提前
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设