启用微信公众平台开发者中心需要拥有自己的服务器资源,用于存放自己开发的程序文件。服务器可以是一个虚拟空间,也可以是云主机或云空间,只要这个空间支持程序的运行并且有域名或者拥有可有效访问的IP。在完成开发后,开发者需要把程序上传到服务器,这样才能被微信服务器访问到。
用户可以在新网、万网、新浪SAE云计算平台等互联网应用服务提供商处申请免费域名、空间或购买收费域名、空间使用。
新浪SAE应用申请新浪云账号创建新浪云应用创建应用版本上传微信接口代码申请SAE中级认证微信开发者中心
接入微信公众平台进行开发,需要启用服务器、填写服务器配置信息、验证服务器地址的有效性,之后即可根据接口文档实现具体业务逻辑的开发工作。
第1步:登录微信公众平台(网址是),在左侧列表中最下方找到开发项,单击下面的基本配置项,之后右侧出现新的内容,单击下面的成为开发者按钮
如果单击确定按钮后,页面顶端提示token验证失败,可以重试几次,有时微信服务器不稳定会造成这种情况,并不是程序本身有问题。
公众号消息加解密是公众平台为了进一步加强公众号安全保障,提供的新机制。开发者需注意,公众账号主动调用API的情况将不受影响。只有被动回复用户的消息时,才需要进行消息加解密。
启用加解密功能(即选择兼容模式或安全模式)后,公众平台服务器在向公众账号服务器配置地址(可在开发者中心修改)推送消息时,URL将新增加两个参数(加密类型和消息体签名),并以此来体现新功能,加密算法采用AES。
为了配合消息加密功能的上线,并帮助开发者适配新特性,公众平台提供了3种加解密的模式供开发者选择,即明文模式、兼容模式、安全模式(可在开发者中心选择相应模式),选择兼容模式和安全模式前,需在开发者中心填写消息加解密密钥EncodingAESKey。
· 明文模式:维持现有模式,没有适配加解密新特性,消息体明文收发,默认设置为明文模式
· 兼容模式:公众平台发送消息内容将同时包括明文和密文,消息包长度增加到原来的3倍左右;公众号回复明文或密文均可,不影响现有消息收发;开发者可在此模式下进行调试
· 安全模式(推荐):公众平台发送消息体的内容只含有密文,公众账号回复的消息体也为密文,建议开发者在调试成功后使用此模式收发消息
这种情况一般是由于公众号服务器网速或响应速度慢,可以先重试几次或者过一段时间后再试,如果还是这样,则需要考虑更换速度更快、性能更好的服务器。
这种情况一般是由于微信服务器短时间内异常引起的,重试或者过一段时间尝试即可。
这种情况需要具体分析验证过程被卡在哪一个环节了,可以通过调用$_SERVER来获取服务器和执行环境信息来分析。
上面的代码,在具有读写权限的空间下,使用file_put_contents()函数把字符串写到文件中。
当我们提交URL和Token验证的时候,程序目录下应当生成一个log.xml文件,内容类似如下:
从用户发送交互请求,到公众号的接收与回应,中间会经过微信服务器的处理,并最终将返回的内容送至客户端,整个消息的交互过程见下图:
1当普通用户向公众号发消息时,用户发送的消息首先会被发送到微信服务器上。
2微信服务器将用户消息封装为XML数据包,然后将封装后的消息通过POST请求方式发送到公众号填写的URL所对应的服务器上。
3公众号服务器接收到用户消息后进行处理,处理完消息后,将需要回复的消息封装为微信公众平台指定的XML数据包,将POST请求结果返回给微信服务器。
4 微信公众平台接收到POST请求结果后,再将公众号回复消息进行处理,并最终将回复内容返回给普通微信用户。
整个消息交互过程为一次完整的POST请求,如果微信服务器在5秒内收不到POST请求的响应就会断掉连接,并重新发起请求,总共重试三次。如果重试三次仍未得到公众号服务器的回复,微信服务器则会丢掉该普通用户发送的消息。因此,程序需要保证在5秒内回复POST请求给微信服务器。
该工具可以帮助开发者检测调用微信公众平台开发者API时发送的请求参数是否正确,提交相关信息后可获得服务器的验证结果。
第2步:系统会生成该接口的参数表,您可以直接在文本框内填入对应的参数值。(红色星号表示该字段必填)