ASP.NET OWIN OAuth,我想问下服务端怎么验证access_token是否正确? 还是Owin.Security 已经集成了?
如果是错误的access_token,返回的内容是{"Message": "已拒绝为此请求授权。"},我想自定义返回数据字段,怎么做? 比如{“code”:1,“message”:"token错误"}
自定义错误返回内容你可以在这里去定义
我也是看了微软的源码加上调试才发现OWIN.Security并不处理相应请求,真正处理请求的地方在这里
1 public class TokenAuthorizeAttribute: AuthorizeAttribute 2 { 3 public override void OnAuthorization(HttpActionContext actionContext) 4 { 5 base.OnAuthorization(actionContext); 6 } 7 8 protected override void HandleUnauthorizedRequest(HttpActionContext actionContext) 9 { 10 //填写你自己的响应内容,这里我抛出了一个自定义异常;你可以根据你的情况写 11 throw new TokenValidateException(); 12 //base.HandleUnauthorizedRequest(actionContext); 13 } 14 15 protected override bool IsAuthorized(HttpActionContext actionContext) 16 { 17 return base.IsAuthorized(actionContext); 18 } 19 }
我是继承的OAuthAuthorizationServerProvider
没有HandleUnauthorizedRequest 这个方法
楼主有解决这个问题吗?我也在找这方面的资料,一直没有找到~
也遇到这个问题,真坑啊。还有就是用户名或密码错误时,想返回指定的数据格式也没找到解决方法,如此实际的应用问题,只提供了一个 SetError(); 的方法。
也遇到这个问题,真坑啊。还有就是用户名或密码错误时,想返回指定的数据格式也没找到解决方法,如此实际的应用问题,只提供了一个 SetError(); 的方法。