收藏
回答

nickName乱码问题

nickName是个表情获取之后乱码   服务器端没有办法验证签名  请官方给个解答

最后一次编辑于  2018-05-29  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

3 个回答

  • Zoelov
    Zoelov
    2018-05-29

    我也遇到这个问题了,不知道微信那里是怎么计算出签名的

    2018-05-29
    赞同 1
    回复
  • 淡定
    淡定
    2018-07-15

    解决方案,我是用了替换

    代码如下:

    $nikeNameOrign=$_GET['nick_name'];

    $nickname = preg_replace("/[^\x{4e00}-\x{9fa5}0-9a-zA-Z]/iu",'',$nikeNameOrign);


    唯一的问题:如果昵称全部是表情,那就没有昵称了


    2018-07-15
    赞同
    回复
  • 东东
    东东
    2018-06-04

    编码问题,后台拿到后。直接改下编码就行了。

    String name = new String(nickName.getBytes("ISO-8859-1"),"UTF-8");

    2018-06-04
    赞同
    回复 4
    • 凉水开了
      凉水开了
      2018-06-05

      好的  谢谢   到时候我测试下

      2018-06-05
      回复
    • 淡定
      淡定
      2018-07-15

      PHP里面怎么转码?

      2018-07-15
      回复
    • 淡定
      淡定
      2018-07-15

      改了数据库、表、字段均为utf8mb4,并没有解决问题,最后只好用了替换。希望有高手能有更好的方法

      2018-07-15
      回复
    • 凉水开了
      凉水开了
      2018-07-17回复淡定

      服务端用UrlEncode(nickname) 存到数据库    小程序端调用先在服务端UrlDecode (nickname) 一下就可以了

      2018-07-17
      回复