自定义WebApi获取token以及Context原创
金蝶云社区-浅笑黯然
浅笑黯然
89人赞赏了该文章 1424次浏览 未经作者许可,禁止转载编辑于2023年08月10日 16:35:23

我们在做自定义api接口开发的时候经常会用到用户的token和上下文Context信息,我这里用C#例句一个方法如下


获取用户Token

         /// <summary>
        /// 获取用户token
        /// </summary>
        /// <returns></returns>
        private string GetUserToken()
        {
            string dbId = "";//账套id
            string username = "Administrator"; //用户名
            string password = "123123132"; //密码
            int lcid = 2052; //登录语言
            string loginResultString = _client.Login(dbid, username, password, lcid);//调用登录
            JObject loginResult = JsonConvert.DeserializeObject<JObject>(loginResultString);//拿到结果后反序列化方便取数
            return loginResult["Context"]["UserToken"].ToString();//返回用户Token
        }


获取上下文Context

        /// <summary>
        /// 获取当前系统上下文信息
        /// </summary>
        /// <returns></returns>
        public static Context GetContext()
        {
            UserServiceProxy userServiceProxy = new UserServiceProxy();
            userServiceProxy.HostURL = WebSiteUrl;
            LoginInfo loginInfo = new LoginInfo();
            loginInfo.AcctID = dbid;//账套id
            loginInfo.Username = username; //用户名
            loginInfo.Password = password; //密码
            loginInfo.Lcid = 2052;//登录语言
            var ret = userServiceProxy.ValidateUser(WebSiteUrl, loginInfo);
            return ret.Context;//返回上下文信息
        }


赞 89