É pra diferenciar pelo método sim. Cada método tem sua finalidade (GET lista, POST bombril, PUT atualiza, DELETE bem, exclui).
http://developer.mindtouch.com/REST/REST_for_the_Rest_of_Us Agora se foi feito por ajax, via browser isso não compete ao rest e sim a interface de acesso que voce está proporcionando. 2012/7/25 felipe bastos <[email protected]> > E lembrando .. > > Uma requisicao normal e uma rest sao identicas .. > > REST é apenas conceitual .. nao da pra diferenciar pelo method .. > > O que pode fazer .. é tratar nos controllers algumas variaveis .. method, > accept, formato de retorno, etc de forma mais amigavel. > Em 25/07/2012 11:43, "felipe bastos" <[email protected]> escreveu: > > Muito complicado criar uma rota para cada funcionalidade .. >> >> Tenta utilizando funcoes anonimas como segundo/terceiro parametro da >> route::set .. pode ser uma alternativa mais viavel .. >> >> Route::set(nome, controller/id, function(){})-default(); >> >> Na function trata accept, format, etc .. seria legal ter um >> Controller_Rest com um render() mais propriado .. >> >> So nao tenho como tentar agora (so daqui a 15 dias kkk), se conseguirem >> .. posta ai >> Em 25/07/2012 11:23, "Waldson Patricio" <[email protected]> >> escreveu: >> >>> Olhem ai: http://pastebin.com/dGdybYsT <http://pastebin.com/vLpkq3Uj> >>> >>> Uso: >>> >>> Colocar essa classe em um modulo ou no application e na definição de >>> rotas: >>> >>> Route::rest_set(HTTP_Request::GET, 'rest_products_list', 'api/products') >>> ->defaults(array( >>> 'action' => 'list', >>> 'controller' => 'products' >>> )); >>> >>> Route::rest_set(HTTP_Request::PUT, 'rest_products_add', 'api/products') >>> ->defaults(array( >>> 'action' => 'add', >>> 'controller' => 'products' >>> )); >>> >>> No controller products criar os métodos: action_get_list, action_put_add >>> para gerenciar as requisições. Se não quiserem o prefixo do método (put, >>> get, post e delete) é só remover o método defaults. >>> >>> >>> 2012/7/25 felipe bastos <[email protected]> >>> >>>> Vejam o respect/rest respect/relational e outros modulos do respect .. >>>> >>>> Ta sendo construido pelo alexandre gaigalas do phpbr >>>> >>>> E o controller pode vir como objeto >>>> >>>> App-get("rota", "NomeController"); >>>> >>>> Por modulo, tlvz de pra integrar .. (respect/slim e outros) >>>> Em 25/07/2012 09:53, "felipe bastos" <[email protected]> escreveu: >>>> >>>> Sao os micro ou nano frameworks php .. >>>>> >>>>> Tem varios nesse estilo .. um deles, feito pela galera do symfony .. >>>>> da pra usar os mesmos componentes do symfony nele .. >>>>> >>>>> Eu criei em ko puro pq quero q a propria aplicacao funcione como api >>>>> .. e, toda a aplicacao roda via ajax .. >>>>> >>>>> Mas nada impede de criar outra aplicacao com slim so para api >>>>> Em 25/07/2012 09:45, "Waldson Patricio" <[email protected]> >>>>> escreveu: >>>>> >>>>>> Foi justamente isso que pensei. Estender o Route (RestRoute) e >>>>>> implementar esses métodos e usar a interface do Kohana mesmo: >>>>>> >>>>>> RestRoute::get('rota_id', 'api/products/<id>')->.... >>>>>> RestRoute::post('rota_id', 'api/products/<id>')->.... >>>>>> RestRoute::put('rota_id', 'api/products/<id>')->.... >>>>>> RestRoute::delete('rota_id', 'api/products/<id>')->.... >>>>>> >>>>>> e a função do controller (Que também terá um RestController) fazer as >>>>>> actions com prefixo do método: >>>>>> >>>>>> function action_get_products >>>>>> >>>>>> function action_put_products >>>>>> >>>>>> >>>>>> 2012/7/25 jose antoniel de lima Lima <[email protected]> >>>>>> >>>>>>> Tenho lindo sobre backbone js achei muito entereçante esse framework >>>>>>> agora achei esse Slim PHP e possivel configurar as rotas com ele da >>>>>>> seguinte maneira, achei bacana esse Slim talvez de para fazer algo com >>>>>>> as >>>>>>> rotas do kohana aclopado do Slim, algo do tipo: >>>>>>> >>>>>>> Route::set('slim', array('Slim', 'route')); >>>>>>> >>>>>>> ai na função do Slim que executa a rota posso fazer retorna uma rota >>>>>>> com controller, action e id para que o kohana execute a ação, acho que >>>>>>> isso >>>>>>> pode funcionar, vou ver quando iniciar o projeto e posto aki. >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> //GET route >>>>>>> $app->get('/hello/:name', function ($name) { >>>>>>> echo "Hello, $name"; >>>>>>> }); >>>>>>> >>>>>>> //POST route >>>>>>> $app->post('/person', function () { >>>>>>> //Create new Person >>>>>>> }); >>>>>>> >>>>>>> //PUT route >>>>>>> $app->put('/person/:id', function ($id) { >>>>>>> //Update Person identified by $id >>>>>>> }); >>>>>>> >>>>>>> //DELETE route >>>>>>> $app->delete('/person/:id', function ($id) { >>>>>>> //Delete Person identified by $id >>>>>>> }); >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Atenciosamente, >>>>>>> José Antoniel de Lima >>>>>>> Analista de Sistemas PHP5 >>>>>>> >>>>>>> -- >>>>>>> Você está recebendo esta mensagem porque se inscreveu no grupo >>>>>>> "Kohana Php" dos Grupos do Google. >>>>>>> Para postar neste grupo, envie um e-mail para >>>>>>> [email protected]. >>>>>>> Para cancelar a inscrição nesse grupo, envie um e-mail para >>>>>>> [email protected]. >>>>>>> Para obter mais opções, visite esse grupo em >>>>>>> http://groups.google.com/group/kohana-php?hl=pt-BR. >>>>>>> >>>>>> >>>>>> -- >>>>>> Você está recebendo esta mensagem porque se inscreveu no grupo >>>>>> "Kohana Php" dos Grupos do Google. >>>>>> Para postar neste grupo, envie um e-mail para >>>>>> [email protected]. >>>>>> Para cancelar a inscrição nesse grupo, envie um e-mail para >>>>>> [email protected]. >>>>>> Para obter mais opções, visite esse grupo em >>>>>> http://groups.google.com/group/kohana-php?hl=pt-BR. >>>>>> >>>>> -- >>>> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana >>>> Php" dos Grupos do Google. >>>> Para postar neste grupo, envie um e-mail para >>>> [email protected]. >>>> Para cancelar a inscrição nesse grupo, envie um e-mail para >>>> [email protected]. >>>> Para obter mais opções, visite esse grupo em >>>> http://groups.google.com/group/kohana-php?hl=pt-BR. >>>> >>> >>> -- >>> Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana >>> Php" dos Grupos do Google. >>> Para postar neste grupo, envie um e-mail para >>> [email protected]. >>> Para cancelar a inscrição nesse grupo, envie um e-mail para >>> [email protected]. >>> Para obter mais opções, visite esse grupo em >>> http://groups.google.com/group/kohana-php?hl=pt-BR. >>> >> -- > Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana > Php" dos Grupos do Google. > Para postar neste grupo, envie um e-mail para [email protected]. > Para cancelar a inscrição nesse grupo, envie um e-mail para > [email protected]. > Para obter mais opções, visite esse grupo em > http://groups.google.com/group/kohana-php?hl=pt-BR. > -- Você está recebendo esta mensagem porque se inscreveu no grupo "Kohana Php" dos Grupos do Google. Para postar neste grupo, envie um e-mail para [email protected]. Para cancelar a inscrição nesse grupo, envie um e-mail para [email protected]. Para obter mais opções, visite esse grupo em http://groups.google.com/group/kohana-php?hl=pt-BR.
