首页 新闻 会员 周边 捐助

ASP.NET OWIN OAuth token 验证有效

0
悬赏园豆:15 [待解决问题]

ASP.NET OWIN OAuth,我想问下服务端怎么验证access_token是否正确? 还是Owin.Security 已经集成了?
如果是错误的access_token,返回的内容是{"Message": "已拒绝为此请求授权。"},我想自定义返回数据字段,怎么做? 比如{“code”:1,“message”:"token错误"}

zhujinhu的主页 zhujinhu | 初学一级 | 园豆:29
提问于:2015-12-24 10:15
< >
分享
所有回答(3)
0

自定义错误返回内容你可以在这里去定义

我也是看了微软的源码加上调试才发现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 }

 

Nothing_韩鑫 | 园豆:202 (菜鸟二级) | 2016-06-29 17:56

我是继承的OAuthAuthorizationServerProvider

没有HandleUnauthorizedRequest 这个方法

支持(0) 反对(0) zhujinhu | 园豆:29 (初学一级) | 2016-08-05 17:14
0

楼主有解决这个问题吗?我也在找这方面的资料,一直没有找到~

fastfastgogo | 园豆:202 (菜鸟二级) | 2016-09-20 15:41

也遇到这个问题,真坑啊。还有就是用户名或密码错误时,想返回指定的数据格式也没找到解决方法,如此实际的应用问题,只提供了一个 SetError(); 的方法。

支持(0) 反对(0) txworld | 园豆:49 (初学一级) | 2018-07-29 10:44
0

也遇到这个问题,真坑啊。还有就是用户名或密码错误时,想返回指定的数据格式也没找到解决方法,如此实际的应用问题,只提供了一个 SetError(); 的方法。

txworld | 园豆:49 (初学一级) | 2018-07-29 10:43
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册