Gegeben ein Ausnahmefilter wie folgt.WebApi2 Standard Ausnahme Objekt für Filter
public override void OnException(HttpActionExecutedContext context)
{
var resp = new HttpResponseMessage(HttpStatusCode.InternalServerError)
{
// what must I change here to return an object
// similar to the default exception handler?
Content = new StringContent("THIS IS MY ERROR"),
};
throw new HttpResponseException(resp);
}
Die Ausnahme Grund an den Client zurückgegeben JavaScript eine einfache Zeichenfolge ist.
Wenn eine Ausnahme in einem Standard geworfen wirdWebApi2
Controller, der Standard Grund Objekt zurückgegeben enthält die Konfiguration, Daten, headers etc. Ich kann kein Beispiel finden, wie all diese zusätzlichen Informationen von meinem Ausnahmefilter zurückgegeben werden. Ich habe versucht, die Quelle ohne Erfolg Check-out ...
$http.get('/mydata')
.catch(function(reason) { ... do stuff with reason })
.then(...);
Was muss ich ändern, um die gleiche Standardantwort nicht nur ein einfacher String zurück.
Content = new ... // what goes here.
Ich habe nicht den genauen Code mit mir, aber ich habe das ein paar Mal getan. Sie müssen ein 'IHttpActionResult' zurückgeben. Mit diesem können Sie entweder Ihre HTTP-Statuscodes 500, 400, 401, 403 usw. zurücksenden. –
Vielen Dank: Fermat wäre stolz – Jim