Ho questa situazione progettuale al lavoro. Abbiamo un'applicazione Web-Api interna e un'applicazione di moduli Web di Asp.Net (UI). L'applicazione Web chiama Web-Api per aggiornare un contraente.
public Class Contractor {
public string Id {get;set;}
public string Name {get;set;}
<<Ton of other Properties>>
public string Status {get;set;}
}
In genere l'app UI può aggiornare l'appaltatore completo inviando tutti i dettagli, ad eccezione dello stato. Un utente può modificare lo stato in chiuso facendo clic su un pulsante speciale "Chiudi" sullo schermo. In questo caso l'architetto del team di interfaccia utente non desidera inviare l'appaltatore completo con lo stato come chiuso. Inoltre, prima che un contraente venga chiuso, esiste una serie di regole aziendali che devono essere soddisfatte. Quindi questo non è un aggiornamento diretto.
Quindi possiamo fornire un percorso come "/ api / Contractor / {id} / Chiudi"? Non è questo contro il principio RESTFul di non usare i verbi nei nomi e di occuparsi delle risorse invece delle azioni. Posso fare un'eccezione in questo caso?