2017-09-21 2 views
2

J'ai créé une authentification personnalisée pour servicestack, qui fonctionne bien. Le seul problème est que je reçois des réponses vides pour chaque itinéraire, qui nécessite une authentification, quand je ne suis pas connecté. Comment puis-je changer cela pour retourner quelque chose commeRéponse personnalisée ServiceStack en cas d'échec de l'authentification

{ 
    "statuscode":"401", 
    "message":"Unauthorized" 
} 

Merci!

Répondre

1

Le code d'état et la description d'état figurent déjà dans les en-têtes de réponse HTTP renvoyés, ce qui correspond à la réponse attendue d'une API HTTP. Si vous appelez depuis un navigateur Web (c'est-à-dire un client qui accepte HTML), vous pouvez implémenter une page /login (configurable avec AuthFeature.HtmlRedirect) pour afficher une page de connexion à l'utilisateur. Sinon, vous pouvez remplacer OnFailedAuthentication() dans votre AuthProvider personnalisé pour remplacer ce qui est retourné dans une réponse Auth échouée, soyez conscient de ce que vous écrivez dans le corps de la réponse car une réponse JSON n'a de sens que pour les clients demandant des réponses JSON.

+0

Ah, j'ai oublié cela. Merci! – Marcel