项目场景:

最近再写一个微信小程序涉及到获取用户的昵称等信息,起初的时候一切进展顺利,但测试的时候发现一个问题,我们的一位同学始终不能正常授权信息,查询数据库也没有相关的信息。刚开始认为是手机问题或者是代码问题。排查了半天问题还是没有解决。当出现问题的同学给我发测试截图的时候我发现了问题。


问题描述:


这张图看似没有任何问题,用户信息正常获取打印了,但仔细看你会发现,不对呀,它的昵称有一个表情,会不会是这个表情导致的呀。赶紧一波百度,还真是,我的数据库在存这个表情的时候报错,自然是存不进去的。百度找到了两种解决办法。


原因分析:

  • 方法一:改变数据库的编码方式和表的编码方式,据说的改成utf8mb4,我照做了,但是效果貌似并不好,甚至没有任何变化。
  • 方法二:数据存储前进行编码,取出后再反编码,我这里是这样做的。这里用这种方法的时候我的数据库编码格式还是上面那样,没有影响


解决方案:

nickName.encode("unicode_escape")   # 编码
编码后的数据:b'Mr. Ke\U0001f506'
results[1].encode().decode("unicode_escape").replace('b', '').replace("'", ''),
解码后的数据:Mr.Ke(表情)

author: KK
time :2021年10月21日14:49:47
flag:8/30

微信小程序开发——MySQl存储微信昵称的特殊表情相关推荐

  1. 基于微信小程序开发的仿微信demo

    (本文参考自github/liujians,地址:https://github.com/liujians/weApp) 作者声明: 基于微信小程序开发的仿微信demo  整合了ionic的样式库和we ...

  2. 视频教程-微信小程序开发培训教程-微信开发

    微信小程序开发培训教程 本人计算机专业,毕业工作已经10多年,从事过的行业有,安防,通讯,Gps定位,信息统计分析,互联网电商等,从事过的职位. 代码工程师(使用过的语言C#,PHP,Java),Ap ...

  3. 微信小程序 开发 “婚礼邀请函” 微信小程序入门可看

    成品展示: 5个页面 我们来讲解哈(上面地图位置随便定的点) 1.首页开发 一开始进来显示首页  然后默认开始播放背景音乐,这个背景音乐点击右上角图标可以暂停(有动画),然后点击新郎和新娘文字可以调到 ...

  4. 微信小程序开发语言(微信小程序开发教程)详细步骤

    微信小程序开发语言 开发微信小程序用什么语言 1.微信小程序开发所需要的语言比较特别,首先介绍一下需要使用到的文件类型大致分为:WXML(WeiXin Mark Language 微信标记语言).WX ...

  5. uni-app微信小程序开发,引入微信同声传译插件

    以下操作我们均以语音合成为例 一. 登录微信小程序管理后台添加微信同声传译插件: 正式开始使用微信同声传译小程序插件之前需先在微信公众平台 -> 第三方设置 -> 插件管理处添加插件,如下 ...

  6. 微信小程序开发与mysql_微信小程序云开发之云数据库入门

    微信小程序云开发之云数据库入门 介绍 开发者可以使用云开发开发微信小程序.小游戏,无需搭建服务器,即可使用云端能力. 其基础能力数据库,是一个JSON数据库,作用是无需自建数据库,就可以在微信小程序前 ...

  7. 微信小程序开发实战2 微信小程序编程基础

    2.微信小程序编程基础 2.1小程序目录结构 小程序包含一个描述整体程序的主体部分和多个小程序页面.一个小程序主体部分由三个文件组成,必须放在项目的根目录,如下: 文件 作用 app.js 小程序的入 ...

  8. 零基础微信小程序开发心得----注册微信小程序

    因为项目需要用到小程序,自己想写个从零到有的微信小程序专题,记录学习心得. 目录 1.微信小程序简介 2.注册小程序 3.安装开发工具 4.小程序初始化目录介绍 1.微信小程序简介 微信小程序这个词可 ...

  9. 微信小程序开发如何实现微信支付

    微信小程序支付实现需要以下步骤: 申请开通微信支付功能:首先,您需要在微信支付官方申请开通该功能. 创建支付订单:在微信小程序后台创建一个支付订单,并获取支付参数. 前端实现支付:在小程序前端代码中调 ...

最新文章

  1. 公共端接正极还是负极_【动力电池大事记】现代摩比斯启动首批模组工厂,松下拟挪威建厂,200名车主起诉现代,密歇根大学开发锂金属固态电池及“无负极”工艺...
  2. 关于电脑的几十个单词及其缩写
  3. 自噬相关数据库Human Autophagy Database使用指南
  4. List集合和set集合
  5. javac命令不好用的解决方法
  6. Atom飞行手册翻译: 2.2 在Atom中移动
  7. struts 国际化
  8. LAMP源码安装原理
  9. Git和SourceTree配合使用
  10. LabVIEW 杀死进程 直接调用cmd代码来实现
  11. 「Font」- 设置 Fallback 字体(如果字体 A 中不存在某个字符,则从字体 B 中加载该字符) @20210212
  12. 莱斯康混响插件合集 – Lexicon PCM LXP MPX Native Reverb WiN
  13. 使用注册表文件(REG)添加、修改或删除windows注册表项和值
  14. ESET NOD32最新单机、企业中、英文版 + 个人专有ID(90天使用期)申请方法
  15. iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 3306 -j DNAT --to-destinatio
  16. ETCD 源码学习--Raft 选举的 Quorum 机制实现(七)
  17. 机器学习实战-65:主成因分析降维算法(Principal Component Analysis)
  18. 什么是 Batch normalization
  19. TabLayout简单使用
  20. 抖音头条小程序常见的问题

热门文章

  1. matlab 无穷符号,如何用matlab进行级数或数列的符号求和?matlab符号求和指令分享...
  2. python手机版下载-手机python下载
  3. 什么录音软件可以录制电影对白
  4. FPGA入门学习记录(1)----自动售货机(VM_FSM)
  5. 从浏览器输入URL到页面显示的过程
  6. matlab中工作空间的作用,MATLAB的工作空间
  7. 七夕蛤蟆背后的赚钱逻辑,没想到叫两声:孤寡,就可以日赚 10 万
  8. DNS有哪两种域名解析方式?简述这两种方式区别和特点。
  9. 写一个PE的壳_Part 3:Section里实现PE装载器
  10. 组合恒等式1 五个基本的组合恒等式 基础与简单例子