微信企业号是微信为企业客户提供的移动服务,旨在提供企业移动应用入口。它可以帮助企业建立员工、上下游供应链与企业IT 系统间的连接。利用企业号,企业或第三方服务商可以快速、低成本的实现高质量的企业移动轻应用,实现生产、管理、协作、运营的移动化。
首先我们介绍一下微信企业号管理端,作为企业号的创建者,我们拥有最高的权限,此时我们需要为我们的微信企业号平台分配管理组,并加入管理员与开发者,每个管理组具有不同的权限和相应的key值,作为开发者凭据同微信服务器进行交互。(设置-权限管理-选择群组-设置权限-获得开发者凭据):
而此处我们需要介绍的是:微信企业号是将企业的应用与微信平台进行结合,使系统的管理能够接入移动端,使整个管理体系更全面,所以微信企业号中也是基于应用进行开发的,所以在所有开发之前我们必须新建应用:
此后我们就可以打开开发者接口文档和调试工具进行开发了。
我们首先打开开发者模式(大多数使用回调模式):
进入回调模式进行相关的服务器地址配置,设置加密密文和token,然后在接口文档-附录-加解密库下载与返回码中下载微信官方提供的验证代码,并根据其中的使用demo进行自己的服务器配置。在这个环节中,本人遇到了不断的报错:查看token是否解密并明文输出的错误,因为来自官方的demo所以并没有任何的怀疑,让我调试过程中一直没有找到错误,后来自己研究后发现,官方demo中使用的HttpUtils.SetResponce方法根本不存在,或者说没有提供httputils包,所以将其全部换成$_GET['']的接收方式就可以正常接收微信服务器发送的请求了,而输出也需要使用echo函数,就可以解除了。此后,只需要根据微信企业号提供的官方文档进行开发,就可以顺利的将自己的应用接入微信平台中了。
在开发中,我遇到了这样一个问题:40033:不合法的请求字符,不能包含\uxxxx格式的字符。这个问题的产生,是你将中文信息发送给服务器的时候,使用json_encode转码时,php函数本身的bug,而解决方法也非常简单:使用json_encode方法前,将字符串进行urlencode编码,而使用过后urlendecode解码就可以了。
本文附带了php使用curl模拟发送https get和post方式的代码,欢迎大家下载,大家在开发过程中如果还遇到什么问题可以交流。
解决php json_encode乱码问题代码:
<?php
$arr = array("id"=>1,"name"=>"小明");
echo "直接输出".json_encode($arr)."</br>";
$arr = array("id"=>1,"name"=>urlencode("小明"));
echo "urlencode处理后".urldecode(json_encode($arr));
?>
php curl 模拟https post和get方法代码截图: