In meiner Web-API fange ich die von der DoCdssLoginTests(...)-Methode ausgelöste AuthenticationException ab. In diesem Fall gebe ich einen 401-Fehler zurück, möchte ihn aber zum Senden einer benutzerdefinierten Nachricht verwenden können. < /p>
Das Inhaltsmitglied ist nicht verfügbar und ich kann die Antwort nicht mit einem neuen Mitglied überschreiben.
Ich habe diesen Thread gefunden, aber er bewirkt in meiner Methode nicht wirklich etwas, da ich einen String anstelle eines IHttpActionResult zurückgebe.
Ich kann auf .NET-Ausnahmen abzielen, die als „Nicht autorisiert“ oder „Unvalidiert“ ausgelöst werden
[ HttpGet ] [ Route( "/DoCdssLoginTests" ) ] public string DoCdssLoginTests( string sAdName ) { log.LogTrace( "AdStudentController::DoCdssLoginTests() - in" ); try { return studBll.DoCdssLoginTests( sAdName ); } catch ( AuthenticationException ex ) { Response.StatusCode = ( int ) HttpStatusCode.Unauthorized; //<--- I WANT TO SET A CUSTOM MESSAGE HERE TO BE RETURNED TO VUE CLIENT. - EWB return "N"; } catch ( Exception ex ) { throw; } return "OK"; }
必须返回ActionResult,然后才能返回Unauthorized();像这样: