JSON API插件做API接口

/ 0评 / 5

多数的博客系统都是使用WordPress搭建的,而作为博客系统,可能我们需要在站外调用博客的文章,请求这个API接口,可以获取最新文章列表,一般通常的做法是新建一个PHP文件,接收几个参数,查询数据库,用JSON格式返回数据就行了。
WordPress的插件是非常强大的,几乎能完成我们需要的所有工作,一款叫JSON API的WordPress插件可以提供API服务,并且更全面,它可以返回最新文章,类别,作者,文章详情,就是在WordPress中几乎所有的内容都可以通过它来获取JSON格式的数据,它甚至可以通过传递json数据实现文章评论、用户注册。
有了这样一款插件,关键是有了这样一个API接口,可以不用费劲自己写API了,但是可以用来做什么呢?
比如我想做个微信公共帐号,用户输入1,返回最新文章列表,根据用户输入返回不同的内容,这就要请求API地址返回JSON格式的数据。插件可以在后台中安装。安装好后,使用方法如下(本文只介绍几个常见的,其他的请参考插件说明文档):
隐式调用
http://blog.duicode.com/?json=1(返回该站全部json格式数据)
http://blog.duicode.com/?p=2050&json=1(返回文章id为2050的json数据)
http://blog.duicode.com/tag/banana/?json=1(返回标签是banana的json数据)
显示调用
http://blog.duicode.com/?json=get_recent_posts(返回最新文章json数据,默认返回很多字段,可以指定)
http://blog.duicode.com/?json=get_post&post_id=2050(返回id为2050的文章json数据)
http://blog.duicode.com/?json=get_tag_posts&tag_slug=banana(返回tag标签是banana的json数据)
链接友好型调用
http://blog.duicode.com/api/get_recent_posts/
http://blog.duicode.com/api/get_post/?post_id=2056
http://blog.duicode.com/api/get_tag_posts/?tag_slug=banana
API返回的json数据如下:

{
"id":1,
"slug":"hell-world",
"url":"http://localhost/wordpress/?p=1",
"title":"Hello world",
"title_plain":"Hello world!",
"content":"

Welcome to wordpress. this is your first post", "date":"2015-11-12 12:25:36", "modified":"2015-11-12 12:25:36", "categories":[], "tags":[] }

可以看到,返回的内容太多了,也许我们只要最新列表中的标题和链接就够了。
http://blog.duicode.com/api/get_recent_posts/?callback=show_posts_widget&read_more=More&count=3
有很多参数可以选,比如count为返回的文章数目,参考官方文档吧。

评论已关闭。