微信公众平台发送客服消息 invalid openID错误 errcode:40003

你可以看一下你的组装JSON的代码,肯定是直接用的类似于这样的形式:


"touser": $openID

如果你试过用json_encode的话,你会发现这样是不会报invalid openID错误的。


我们可以把两种方式组装的数据打印出来比较一下:


string(104) "{"touser":"xxxxxxx","msgtype":"text","text":{"content":"xxx"}}"()


string(173) "{

     'touser':xxxxxxx,

     'msgtype':'text',

     'text':

     {

          'content':xxx

     }

}"

显然,后者的"openID"并没有被双引号包含,这就是invalid openID报错的原因。

有两种方法可以解决,第一是用   \"$openID\"  的形式来组装数据,但是并不提倡这么做。


还有就是使用json_encode组装数组数据,但是用过的人可能会发现content里的汉字都会被换成unicode字符,解决办法是网上找一个ch_json_encode()方法,可以完美解决!


原创!手打!

  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值