ApiController实现自定义身份认证
Posted 还是上天吧
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ApiController实现自定义身份认证相关的知识,希望对你有一定的参考价值。
1 /// <summary> 2 /// 身份认证 3 /// </summary> 4 public class AuthAttribute : AuthorizationFilterAttribute 5 { 6 /// <summary> 7 /// 重写认证过程 8 /// </summary> 9 /// <param name="actionContext"></param> 10 public override void OnAuthorization(HttpActionContext actionContext) 11 { 12 HttpResponseMessage message = new HttpResponseMessage(); 13 message.StatusCode = System.Net.HttpStatusCode.OK; 14 15 var TokenQuery = actionContext.Request.GetQueryNameValuePairs().ToList().Where(m => m.Key == "api_key").FirstOrDefault(); 16 if (string.IsNullOrEmpty(TokenQuery.Value)) 17 { 18 string json = JsonConvert.SerializeObject(new ReturnModel() { RetCode = 200, Data = { }, Msg = "token认证失败" }); 19 StringContent Content = new StringContent(json, Encoding.GetEncoding("UTF-8"), "application/json"); 20 message.Content = Content; 21 22 actionContext.Response = message; 23 return; 24 } 25 //数据库查询方法 26 //... 27 } 28 }
以上是关于ApiController实现自定义身份认证的主要内容,如果未能解决你的问题,请参考以下文章
启用Azure移动服务身份验证会导致POST请求中的“资源不支持GET”
使用 System.Web.Http.ApiController + Postman 进行身份验证 - 没有遇到断点/不确定这是如何工作的