che io chiamo un endpoint api in un MVC 6 WebAPI:MVC 6 WebAPI pagina di errore di ritorno html invece della versione JSON dell'oggetto eccezione
POST http://localhost:57287/mytestapi/testentity/ HTTP/1.1
Accept: application/json
X-APIKey: 00000000-0000-0000-0000-000000000000
Content-Type: application/json; charset=utf-8
Host: localhost:57287
Content-Length: 1837
Expect: 100-continue
Connection: Keep-Alive
Nel corpo ho JSON entità prova serializzato.
Ho un errore nel mio codice controller entità e l'API restituisce una risposta di 500 'Errore server' so che il bug è un errore risolverlo, tuttavia il problema con cui ho bisogno di aiuto è che l'API sta tornando HTML al posto dell'eccezione json serializzata - Json è quello che mi aspetto: è ciò che il vecchio webapi restituirebbe. Ho portato il codice da un vecchio progetto di test che so funziona.
Quindi perché MVC 6 WebAPI restituisce html anziché json? C'è qualche configurazione che devo fare?
MODIFICA: Ho aggiunto Accetta: application/json alle intestazioni come suggerito da @danludwig, tuttavia questo non ha risolto il problema, ho ancora ricevuto una pagina di errore html.
ho guardato i miei StartUp.cs ed ho trovato:
if (env.IsDevelopment())
{
//app.UseBrowserLink();
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Home/Error");
}
nel metodo ConfigureApp. Ho provato con app.UseDeveloperExceptionPage(); commentata. Ciò ha impedito il ritorno della pagina di errore html nel corpo della risposta API, tuttavia non sto ancora ottenendo l'oggetto eccezione serializzato json.
'Accept: application/json' purtroppo non – danludwig
. Ho modificato la domanda per mostrare la nuova intestazione, grazie però. – John
c'è la possibilità che 'JsonOutputFormatter' venga rimosso dal tuo codice? –