这几天在开发一个微信公众平台的插件,虽然没有什么技术含量但是就是坑多,把遇到的坑记录一下:
零 写个demo在哪儿测试呢?
开始只能在WEB界面的在线调试工具(http://mp.weixin.qq.com/debug)中,人工填写参数来测试,没法真正的联调,而且用的接口许多不提供。后来在朋友的指点下找到了微信公众平台接口测试帐号(http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login)这里可以申请到有效期一年的测试临时帐号,可以使用所有的接口。
一 只是想给用户发文章而已,本来以为分分钟搞定的事,其实涉及4个接口:
1 拿app ID和secret获取一个access token,这比较好理解
2 上传缩略图获得一个media_id
3 拿缩略图的media_id和题目、正文、摘要等信息组装出一篇文章来上传,又获得一个文章的media_id
4 把文章正式发出去
二 上传图片接口和组装图文信息接口返回的都叫media_id,但其实不是一个东西,这个坑我也好半天才爬出来
三 一般POST方式传数据都是key,value这样的键值对,而微信接口规定把参数组装成数组,然后json_encode之后,整个作为字符串塞到header中。这个问题卡了我一天多,我在网上看到很多人在问这个问题,但也没有人能给出解释。当最后发现竟然真的是json_encode成一坨再上传时,我惊了。
还有一个不是微信API的坑,是PHP的坑。从PHP5.5开始,curl不再支持通过在文件名前加@方式上传文件,我捣鼓了半天才发现这个问题,使用最新的curl_file_create替换后,问题解决。
2014-10-25 23:22:46
微信公众平台API的那些坑
本文链接地址:http://www.yubosun.com/tech/weixin-api-php-keng.htm
标签: php 微信 api
分类:技术 | 浏览:868 | 评论:2




姓 名: