通过桌面应用程序的博客界面

时间:2010-02-25 15:24:03

标签: php api interface blogs

我不确定如何标题这个问题......

基本上,我已经下载了一些“桌面博客应用程序”,这是一个桌面应用程序,可以让你发布到你的博客。您可以获得通常的标题/文本表单,并且可以添加图像和内容。

使用这些应用程序时,您可以设置您的博客设置,您的URL,然后告诉它您的博客使用的“博客软件”,然后它将使用正确的API为您的博客提取您的博客,创建一个新的,编辑旧的等等。

好吧,我是(PHP)CMS的作者,我没有使用任何预制的博客框架,但我自己编写了使用我的数据库和我处理成员,回复,评论等的方法。

嗯,有没有办法在这些博客软件和我的软件之间建立一个桥梁,这样我就可以告诉用户他们可以下载“MarsEdit”(例如),然后将其指向url X并将其设置为博客软件Y然后它会起作用吗?

我需要的是一些中间层API,我可以使用它根据开放且漂亮/称职的博客界面向用户应用程序发送和接收博客内容。

任何想法,或者我没有任何意义?

5 个答案:

答案 0 :(得分:4)

您绝对应该为CMS实施标准XML-RPC API。然后,任何与此API兼容的软件都可以与您的博客进行交互。

我建议实施MetaWeblog:http://www.xmlrpc.com/metaWeblogApi。它得到了所有主要博客软件和网站的支持。

来自维基百科:

  

MetaWeblog API是一个应用程序   编程接口   软件开发人员Dave Winer说   允许写入weblog条目,   使用网络编辑和删除   服务。

     

API实现为XML-RPC   Web服务有三种方法   名称描述其功能:   metaweblog.newPost()   metaweblog.getPost()和   metaweblog.editPost()。这些方法   采用指定博客的参数   作者的用户名和密码   与相关的信息   个人博客条目。

正如其他答案中所说,MetaWeblog的替代品是AtomPub(The Atom Publishing Protocol)。

恕我直言,AtomPub更复杂,功能更多,实施起来更加复杂。此外,我认为MetaWeblog比AtomPub更广泛地实现,并且具有crapload of compatible clients

编辑:这里有一些实现示例:

答案 1 :(得分:2)

他们可能使用Atom Publishing Protocol。规范描述了您需要实现的API功能。

答案 2 :(得分:1)

完美的感觉,但你需要支持一个标准,所有这些都有更多信息的链接,但基本上我使用的大多数“主流”CMS(drupal,joomla,postnuke等)都使用xml-rpc和某种形式的博客api。假设您精通PHP,drupal的代码库通常很容易通过提示和代码重用。

http://code.google.com/intl/en/apis/blogger/

http://code.blogger.com/

http://codex.wordpress.org/XML-RPC_Support

http://www.sixapart.com/developers/xmlrpc/blogger_api/

http://www.xmlrpc.com/metaWeblogApi

由于您是在PHP中进行的,因此可以对drupal module进行调整或进行逆向工程,以便在使用xml-rpc的三个“主要”博客apis上获取足够的信息。

答案 3 :(得分:0)

查看Movable类型API(http://www.sixapart.com/developers/xmlrpc/movable_type_api/),以及一般WordPress支持的所有API(http://codex.wordpress.org/XML-RPC_Support

答案 4 :(得分:0)

您可以运行Fiddler并查看桌面应用程序正在执行的操作。