[企业公众号]升级到[企业微信]之后发送消息失败的解决方法

yipeiwu_com6年前PHP代码库

本文实例讲述了[企业公众号]升级到[企业微信]之后发送消息失败的解决方法。分享给大家供大家参考,具体如下:

最近,看到消息,说是微信把企业公众号升级到企业微信。当时并没有在意,但是后来发现之前用企业公众号的接口来发通知消息的程序发不出去消息了。

于是,我又打开升级消息,仔细的读了一下:企业号将迁移至企业微信管理后台(work.weixin.qq.com/login)进行统一管理。之前企业公众号的管理后台地址是qy.weixin.qq.com,发不了消息难道是接口地址也变了吗。

登到新后台看了下,发现应用的Secret值变了,相比之前位数要少一些。将代码中的Secret值替换成新的之后,发现还是不行。debug看了下,在用post请求调用接口发消息的时候报错:{"errcode":-1,"errmsg":"Invalid input"}。分析原因可能有两个:调用的发消息接口地址不对了;或者,传的post参数的格式不对了。

还好,在其官网上找到了企业微信的API说明文档:https://work.weixin.qq.com/api/doc ,上面有较详细的使用说明。经确认,调用接口的url地址并没有变(发送消息还是用https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN)。但是发现文本消息的格式有点不一样,官网示例如下:

{
    "touser" : "UserID1|UserID2|UserID3",
    "toparty" : " PartyID1|PartyID2 ",
    "totag" : " TagID1 | TagID2 ",
    "msgtype" : "text",
    "agentid" : 1,
    "text" : {
      "content" : "你的快递已到,请携带工卡前往邮件中心领取。\n出发前可查看<a href=\"http://work.weixin.qq.com\">邮件中心视频实况</a>,聪明避开排队。"
    }
}

上面的UserID、PartyID这些应该我之前都是当数值传的,但示例上是放在引号里面的,那就是被当做字符串了。于是,我把代码也改成按字符串的方式试了下,结果可以了。。。

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP微信开发技巧汇总》、《PHP编码与转码操作技巧汇总》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

也谈php网站在线人数统计

  function checkOnline($userid,$tempid=null)       {&n...

php传值和传引用的区别点总结

php传值:在函数范围内,改变变量值得大小,都不会影响到函数外边的变量值。 PHP传引用:在函数范围内,对值的任何改变,在函数外部也有所体现,因为传引用传的是内存地址。 传值:和copy...

PHP闭包函数传参及使用外部变量的方法

本文实例讲述了PHP闭包函数传参及使用外部变量的方法。分享给大家供大家参考,具体如下: 在Laravel控制器写两个方法,一个是在内部创建一个闭包函数,一个是执行传过来的闭包函数,测试闭...

php自动加载机制的深入分析

php自动加载机制的深入分析

一、php中实现自动加载的方法1.使用require,include,require_once,include_once手工进行加载。2.使用__autoload来进行自动加载3.使用s...

php实现分页功能的3种方法第1/3页

直接上代码,希望大家仔细阅读。 方法一:讲sql查询进行分页进行,需要调用几个函数,具体见脚本: 1.pager.class.php <?php class...