基于关系数据库构建RESTful API

时间:2013-01-14 03:41:17

标签: php api rest

我正在尝试构建RESTful API。我理解RESTful API是如何工作的,我为我的api开发了一个很好的数据库结构和模型,以及用于检测请求类型和循环遍历每个“节点”的代码。

  

API模型

Collection      Resource               Table


associations    associations/AID       Associations

Users           Users/UID              Users

groups          groups/GID             Groups

events          events/EID             Events 

UID/events      UID/events/EID         Events_Map

UID/groups      UID/groups/GID         Group_Map 

GID/events      GID/events/EID         Group_Events

AID/events      GID/events/EID         Association_Events
     
     

关系

     
      
  • 协会 - >基

  •   
  • 协会 - >用户

  •   
  • 协会 - >事件

  •   
  • 用户 - >基

  •   
  • 用户 - >事件

  •   
  • 组 - >用户

  •   
  • 组 - >事件

  •   

我在编写用于将数据库资源转换为api资源的php代码时遇到问题。我已经阅读了许多用于编写REST API的在线教程,但它们都没有解决如何处理嵌套数据的问题。我很乐意为这个项目使用一个框架,但它适用于学校。


总结如何编写代码来处理复杂的api请求并生成必要的数据库查询,即使它们包含高级函数(如join)。

2 个答案:

答案 0 :(得分:1)

而不是我试图解释我的脑子,我发现Apigee的博客是构建开发人员友好的API的最佳资源。我现在已经构建了3个API,这些API在成千上万的电子商务网站中使用Apigee的策略,开发人员的反馈非常好,因为我告诉它非常直观。非常感谢Apigee。

http://blog.apigee.com/detail/slides_for_restful_api_design_second_edition_webinar

答案 1 :(得分:0)

示例:当我需要使用UID查找用户时,UID会传递给存储过程,该存储过程会根据该UID选择用户。

对于我的REST API,我创建的对象充当API和数据库调用之间的中介

另外,请查看此question