Integrazione di percorsi che non sono risorse in un'applicazione in stile REST MVC

2

Vorrei mantenere la mia domanda relativamente pura REST per motivi di coerenza, ma sto combattendo filosoficamente con le relativamente poche visioni (forse solo una) che ho bisogno di costruire che non riguardano le risorse direttamente, e quindi non si adattano allo stile REST.

Ad esempio, prendi la home page. Ruby on rails sembra cauzione sui loro approccio RESTful per questo bisogno di base di tutti i siti web. La pagina iniziale appare speciale:

  • Puoi ottenerlo, ma si suppone che un get al livello di risorsa ti dia una collezione di elementi. Posso immaginare che questa sia la lista delle rotte, forse, ma sembra un tratto e non si rivolge ad altro.
  • Ottenere la pagina iniziale per ID non sembra avere molto senso - qual è l'elemento di una collezione casa? Di nuovo, forse percorsi, ma una salita su una rotta farebbe cosa? Reindirizzare? Questo sembra strano.
  • Non puoi eliminarlo (probabilmente puoi permetterlo agli amministratori)
  • L'aggiunta di un secondo non ha senso, tranne eventualmente se gli elementi fossero percorsi
  • L'aggiornamento potrebbe avere senso per gli amministratori, ma AFAIK REST non descrive gli aggiornamenti direttamente sulla risorsa, solo gli elementi della risorsa ( questo articolo dice esplicitamente" UNUSED "per PUTS sulla risorsa)

È la cosa "giusta" da fare solo per casi speciali con questi tipi di cose? Alla fine della giornata, posso avvolgere la mia testa sulla maggior parte delle applicazioni raccolte attorno alle risorse ... Non riesco a pensare ad un altro buon esempio oltre a una home page, ma dato che è l'inizio di un'applicazione, penso che merita un pensierino.

    
posta Emil Lerch 20.10.2011 - 17:07
fonte

1 risposta

1

Una homepage è ancora una risorsa, un po 'anacronistica. Quando il web era nuovo, una convenzione sorse che le richieste GET alla radice del server "/" avrebbero avuto risposta con un documento predefinito, solitamente "index.html", altrimenti noto come home page.

Fare il PUT su una risorsa è esattamente come lo si aggiornerebbe. Generalmente non ha senso mettere una collezione (che è quella 'inutilizzata' nell'articolo). Ma una home page non è una collezione quindi non c'è nessun caso speciale lì.

    
risposta data 22.10.2011 - 20:13
fonte

Leggi altre domande sui tag