RESTServer: Pacote para criar sistemas RESTful em PHP

Como disse no texto sobre REST, a cerca de um ano comecei a estudar essa arquitetura. E que maneira melhor de conhecer uma tecnologia do que implementando-a?

Bom com esse intuito apliquei os principios de REST ao longo dos projetos que tive, em paralelo montei uma biblioteca com o pacote de classe uteis aos projetos, que consideirei estável este ano  e então publiquei. Pode conferir o projeto no PHPClasses ou se aventurar no GITHub

É um conjunto de classes para PHP que constitui o seguinte:

  • RESTAction – Uma interface para ações a serem tomadas
  • RESTController – Interface para os controllers que responderão as requisições
  • RESTView – Interface para as classes responsáveis pelas respostas
  • RESTRequest – Classe que contêm os dados da requisição feita
  • RESTResponse – Classe para controlar a resposta
  • RESTServer – Principal classe para o controle do fluxo das informações

O Objetivo principal é prover um meio fácil de mapear Métodos e URLs para Controller(ou métodos deste), assim o uso básico é o seguinte:

$rest = new RestServer;
$rest->addMap("GET","/user/[0-9]*","UserController");
$rest->addMap("POST","/user","UserController::insert");

Você escolhe um método HTTP, um padrão de URL (usando regex) e o controller ou até o método especifico.(Pode até mapear direto para uma View, mas isso é feio ;).

O RestServer é passado para o controller para este poder usar o que for necessário. RestServer prove as informações da requisição(URL, método, parametros, mime…) através do RESTRequest e permite configurar a resposta (headers, content…) pelo RESTReponse, além de possuir controle de autênticação.

Mais detalhes pode conferir nos arquivos do pacotes. 

7 ideias sobre “RESTServer: Pacote para criar sistemas RESTful em PHP

  1. Olá William.

    No repositório no GIThub (o link esta no texto) você pode ver o exemplo 3, lá eu faço chamadas básicas ao banco de dados, assim como criei um cliente para consumir o webservice.

    O ideal para usar banco de dados é buscar um framework para isso, como o doctrine ou o outlet.

    Para testar basta um servidor web com php, e configurar o MySql(ou outro que for usar).

    Depois é só usar o RestServer na sua aplicação.

  2. Cara sua idea de criar a classe é perfeita. parabéns.

    Tem como vc fazer um exemplo usando consulta em banco de dados?

    Quais os requisitos para testar a ferramenta.

    Presico usar e ñ consegui visualizar resulta algum.

Deixe um Comentário

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>