Z-Blog Wiki Z-Blog Wiki

Z-Blog官方文库

用户工具

站点工具


zblogphp:development:api:basic-design

这是本文档旧的修订版!


基本设计

概要

以 Z-BlogPHP 的 功能模块(Module) 为划分依据,可以分为以下十个模块:

  • 用户模块
  • 文章模块(包括页面)
  • 应用模块(包括插件和主题)
  • 侧栏模块
  • 附件模块
  • 评论模块
  • 标签模块
  • 分类模块
  • 系统模块
  • 设置模块

接口行为(Action) 简单来说就是实现某个模块的数据增删改查操作,比如用户模块的新增用户、用户登录、用户信息的获取与修改等操作。

ZBP API 的整体思想是:服务端根据客户端发送的请求,针对 模块 进行相应的 行为 操作, 并将执行结果返回给客户端。本质上跟原有的网页版差别不大,就是同一套业务逻辑下的不同输出形式,网页版返回的是 HTML,API 返回的是 JSON。

统一入口

规定接口入口为:

http[s]://<域名>/api.php

请求方法

客户端主要使用 GET 和 POST 这两种 HTTP 请求方法来请求服务端资源。

其中,GET 表示“获取”操作,对应数据库中的操作为 SELECT。如:获取某篇文章。

POST 表示“新增”、“修改”和“删除”操作,对应数据库中的操作为 INSERT、 UPDATE 和 DELETE。如:新增一个用户。

为保证对大量参数的支持,对于“获取/查询”类型的接口,同时支持 GET 和 POST 两种请求方式;对于“增删改”类型的接口,只支持 POST 请求方式。

公共请求消息头

消息头(Header) 是否必需 示例值 说明
Content-Type 可选 application/json; charset=utf-8 客户端接受的消息格式。<br />不管怎样,服务端始终返回 JSON 格式内容。
Accept-Encoding 可选 gzip, deflate, br 客户端接受的压缩算法
User-Agent 可选 Mozilla/5.0 -
Referer 可选 https://example.com/ 来源地址
Accept-Language 可选 zh-cn 客户端接受的语言代码
zblogphp/development/api/basic-design.1597153813.txt · 最后更改: 2020/08/11 21:50 由 捷闪站长网