前段时间□□接到客户□□□□的要求,他希望在□□□□公众号里□□发布的文❖章,可以在网◣站上同步□□□□调用这些□□□文章,这样就不□□□□用复杂发□□□□布了,能省不少□□时间,但他又希□□□望文章是□□直接显示□□□□在网站页□□面里的,而不是跳□□转到微信□□公众号的※页面,所以就需□□要做接口▼来采集所□□□□发布的文□□□章。
因为是微◆信公众号□□的文章,肯定是有□□□微信公众□□号账号的,所以打开“微信公众□□平台”的页面,让扫码登□□□□录公众号,需要先进□□行一些设□□置,才可以使□□□用微信公□□□众号开发□□者接口:
首先是设置开发者密码AppSecret和设置IP白名单,如下图所示:

需要特别□□□□说明一下,如果忘记□□□□或不知道AppSecret,只能重置,不可以查□□看,一旦重置,之前的AppSecret将失效,要注意这□□一点。然后是设□□置IP白名单,把调用接□□□口的服务□□□□器IP填写上,可以填写□□多个,设置这两◣个参数是□□为了获取access_token,有了access_token才能调用□□□□微信开发□□者接口。
我们在微□□□□信公众平□□台的页面,可以找到“内容与互□□□□动”->“发表记录”,查看已经□□□□发表的记□□录,点击“发布”,可以看到◎已发布的□□□□文章,这里特别□□说明一下,根据微信❖官方的回□□□□复,目前是无□□□法获取到◎群发的文□□章的,需要把群□□发的文章□□□□发布一下,文章在“发布”里,则可以获•取这篇文□□□□章,如下图所□□示:
使用接口获取发布的文章列表(其实也包括文章内容),如下图所示:

我们使用□□□□的是“发布能力”->“获取成功□□发布列表”的接口,这个接口◈就是用来·获取已发□□□布的文章◇列表,从上面的□□□□接口可以□□看到,是必须有access_token才可以成丨功调用这·个接口的,
下面介绍获取access_token方法,我使用的是thinkphp3代码,如下图所示:

用$access_token = $this->getToken($appid,$appsecret);即可获取到access_token;
其中appid和appsecret对应的是□□微信公众□□□号的开发□□□者ID和开发者□□□□密码,因为这个□□□□接口每天·调用次数□□□是有限的,而且access_token的有效期□□□□是两小时,所以我们□□可以用S缓存来保□□□□存access_token,每一小时□□□才调用access_token一次,其他情况□□直接使用❖已有的access_token就可以了。
这样就可以使用cgi-bin/freepublish/batchget?access_token=ACCESS_TOKEN接口获取文章列表了,返回的内容如下图所示:
其中”item”就是我们□□所需要的丨文章列表□□□的内容,将json内容转成□□□数组,然后插入◈到数据库□□表里就可□□□□以了,部分代码□□如下图所□□示:

其中request_post方法如下图所示:
