ServiceStack自定义响应失败的身份验证

时间:2017-09-21 09:15:01

标签: c# rest servicestack restful-authentication

我已经为servicestack创建了一个自定义身份验证,效果很好。唯一的问题是,当我没有登录时,我得到每条路线的空响应,这需要身份验证。如何更改此设置以返回类似

的内容
{
    "statuscode":"401",
    "message":"Unauthorized"
}

谢谢!

1 个答案:

答案 0 :(得分:1)

状态代码和状态描述已经在返回的HTTP响应标头中,这是来自HTTP API的预期响应。如果您从网络浏览器(即接受HTML的客户端)进行呼叫,则可以实现/login页面(可使用AuthFeature.HtmlRedirect配置)以向用户显示登录页面。

否则,您可以覆盖自定义AuthProvider中的OnFailedAuthentication()以覆盖失败的Auth响应中返回的内容,请注意您在响应正文中写的内容,因为JSON响应仅对请求JSON响应的客户端有意义。