alfmel/cougar

快速开发文档化的REST API的框架

dev-master 2016-07-13 02:21 UTC

This package is not auto-updated.

Last update: 2024-09-28 15:18:35 UTC


README

重要说明

Cougar框架已停止维护。我不再为该项目的主雇主工作,我的前雇主没有提交任何错误或请求,我对维护它也没有兴趣。

我将暂时保留代码。如果您对代码库感兴趣,请现在就分支

重要说明结束

Cougar框架是一个面向对象的PHP 5.4或更高版本的框架。Cougar旨在通过集成、简化和优化安全性、URI路由和数据库访问来简化RESTful API的开发。

Cougar不是一个通用框架。它只专注于使创建REST Web服务变得更容易。它没有购物车、模板或许多界面。

Cougar通过注解推广控制反转(依赖注入)和面向属性的编程。例如,要发布一个类方法作为Web服务端点,您将编写

  class MyClass
  {
    /**
     * @Path /resource/:id
     * @Methods GET
     */
    public function myMethod($id)
    {
      // Your code here
    }
  }

然后按照如下方式将其与REST请求处理器连接起来

  $my_class = new MyClass();

  $security = new Cougar\Security\Security();
  $rest_service = new Cougar\RestService\AnnotatedRestService($security);
  $rest_service->bindFromObject($my_class);
  $rest_service->handleRequest();

如您所见,Cougar允许您通过REST以最少的6行代码发布您的API!

Cougar受到了许多类似的微型和全框架(如Spring、Slim、Doctrine、Tonic等)的启发。

示例

将ZF2 Album教程用Cougar编写成REST API,只需150行代码,包括数据库连接、事务控制和层次模型。要查看代码,请访问zend_tutorial_in_cougar.php

教程

我们发布了一个教程,指导您开发基于Cougar的应用程序。

安装Cougar

最简单安装Cougar的方式是通过Composer。在您的项目目录中添加一个composer.json文件

{
    "require": {
        "alfmel/cougar": "dev-master"
    }
}

然后让Composer为您安装

composer.phar install

Cougar将被直接安装在vendor目录中。

不要让dev-master版本吓到你。Cougar使用持续交付进行开发。这意味着它只接收小的、增量更改。每个版本都经过测试,可用于生产。

您也可以尝试通过PEAR安装。然而,PEAR已被弃用,并且不包含最新的更改

  pear channel-discover alfmel.github.com/pear
  pear install cougar/cougar

您也可以从GitHub克隆,并遵循INSTALL.txt中的说明

  git clone https://github.com/alfmel/cougar