Diciamo che ho una compagnia che classifica i gatti più teneri su Internet.
Offro una risorsa alla/cats/
quale fornisce agli utenti gli ultimi, adorabili gatti adorabili.
Gli utenti possono ottenere solo i primi 3 gatti se non hanno pagato o registrati. I primi 10 gatti se hanno pagato 337 dollari e sono connessi, e i primi 100 gatti se hanno pagato 1337 dollari e sono connessi. Ho un "identificatore utente" quando faccio la richiesta.
In breve, i consumatori /cats/
ottengono un numero diverso di gatti in base alla loro "classifica degli utenti" . Ho un identificatore utente sul lato consumante, ma non ho una rappresentazione esplicita del livello utente sul lato consumante. Vorrei informare gli utenti che possono aggiornare il loro abbonamento al momento della richiesta. Cioè, devo distinguere tra 3 gatti poiché offro solo 3 gatti e 3 gatti perché questo è ciò che il livello utente ha permesso .
Qual è la migliore pratica per distinguere la limitazione della risorsa perché il consumatore non ha sufficienti privilegi e limitarla perché è ciò che ha il consumatore?
Come fa il cliente a sapere se può aggiornare il proprio ranking? Cioè, hanno ottenuto solo una risorsa limitata, perché essi non dispongono di autorizzazioni. Qual è la migliore pratica qui?
Nota, questa è una grossolana semplificazione del caso reale. Inoltre, solo per chiarire: la lettura è apprezzata.
Aggiornare:
Ecco le opzioni che abbiamo considerato:
- Memorizzare gli oggetti delle autorizzazioni utente una volta sul client, eseguendo la query solo quando viene eseguito l'accesso o l'aggiornamento dell'account.
- Passando
null
valori in JSON che indica che esiste, ma non è stato trasferito nulla . Quindi potrebbero essere 10 gatti per un utente con 3 gatti["Garfield","Sylvester","Puss in Boots",null*7]
- Passaggio di una coppia di autorizzazioni per le risorse
{cats:["Whiskers","Fluffy","Socks"],authCount:3}
Mi piacerebbe farlo bene la prima volta per consegnare i gatti più teneri nel miglior modo possibile e vorremmo e vorremmo