zoukankan      html  css  js  c++  java
  • wcf rest 服务用于安卓和ISO调用5-------验证

    年过完了......

    网上看到的一个验证方法,这里记录一下.直接上代码

    先编写server验证方法

     /// <summary>
            /// 校验是否有权限访问
            /// </summary>
            /// <returns></returns>
            private bool CheckIsCheckAuthorization()
            {
                //获得当前web操作上下文
                WebOperationContext woc = WebOperationContext.Current;
                //获得当前请求头中的Authorization
                if (woc == null) return true;
                var auth = woc.IncomingRequest.Headers["Authentication"];
                if (!string.IsNullOrEmpty(auth) && auth == "authentication") return true;
                woc.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.MethodNotAllowed;
                return false;
            }
          public Users GetUserById(string id)
            {
                if (CheckIsCheckAuthorization())
                {
                    return _listCollection.FirstOrDefault(v => v.Id == id);
                }
                return null;
            }

    然后客户端在调用方法的时候设置Authentication的值.代码如下

     private static async void GetUserById(string id)
            {
                Console.WriteLine("-----------根据id获取用户----------");
                HttpClient httpClient = new HttpClient();
                httpClient.DefaultRequestHeaders.Add("Authentication", "authentication");
                var result = await httpClient.GetAsync("http://localhost:31572/Service1.svc/getUserById/1");
                result.EnsureSuccessStatusCode();
                Console.WriteLine(result.Content.ReadAsStringAsync().Result);
            }
    

      完成了.

  • 相关阅读:
    Django的高级用法
    Django信号和缓存
    初识Django框架
    虚拟化之KVM(上)
    jQuery操作页面-day13
    SSM整合
    新闻发布系统
    jsp
    分层
    简单工厂
  • 原文地址:https://www.cnblogs.com/yt-007/p/5189894.html
Copyright © 2011-2022 走看看