Sto implementando un'API simile a REST e ho appena affrontato un problema interessante. È necessario fornire una risorsa con un elenco aperto di parametri di query per filtrare i risultati. Ad esempio:
GET /api/items?field1=value1&field2=value2
I nomi dei campi sono configurabili, quindi non ho la lista completa dei possibili nomi.
Ci sono anche parametri con un significato speciale, ad es. orderBy=field5
Il problema è quando c'è un campo con lo stesso nome di uno dei parametri predefiniti. L'API deve in qualche modo distinguere tra loro.
Molti programmi a riga di comando utilizzano due trattini ("-") per contrassegnare la fine delle opzioni e l'inizio degli argomenti. Penso a qualcosa di analogo negli URL.
C'è qualche buona pratica in questo argomento?