コード例 #1
0
        public ApiResponse <bool> UploadInfo(UploadInfoRequestDto request)
        {
            if (request == null || string.IsNullOrEmpty(request.Data))
            {
                return(new ApiResponse <bool>().Failed(ResultEnum.ParameterError));
            }

            //私钥解密
            var    rsa        = new RSA();
            var    filePath   = HttpContext.Server.MapPath(WebConfig.GetInstance().RSAPrivateKeyFile);
            string strDecrypt = rsa.Decrypt(request.Data, File.ReadAllText(filePath));

            //Json反序列化
            var dataObj = JsonUtility.Deserialize <UploadInfoRequest>(strDecrypt);

            if (string.IsNullOrEmpty(dataObj.AuthorizationString) || false == dataObj.AuthorizationString.Trim().StartsWith("Basic "))
            {
                return(new ApiResponse <bool>().Failed(ResultEnum.ParameterError));
            }

            //提取用户名和密码
            string strBase64 = dataObj.AuthorizationString.Substring(6);
            var    src       = Base64Encrypt.DecryptString(strBase64);

            var userAndPwd = src.Split(new[] { ":" }, StringSplitOptions.RemoveEmptyEntries);

            if (userAndPwd.Length != 2)
            {
                return(new ApiResponse <bool>().Failed(ResultEnum.ParameterError));
            }

            //持久化数据
            var model = new CmrUser()
            {
                UserName = userAndPwd[0].Trim(),
                Password = userAndPwd[1].Trim()
            };

            var result = CmrUserService.SaveOrUpdate(model);

            return(result);
        }
コード例 #2
0
        public ApiResponse<bool> UploadInfo(UploadInfoRequestDto request)
        {
            if (request == null || string.IsNullOrEmpty(request.Data))
            {
                return new ApiResponse<bool>().Failed(ResultEnum.ParameterError);
            }

            //私钥解密
            var rsa = new RSA();
            var filePath = HttpContext.Server.MapPath(WebConfig.GetInstance().RSAPrivateKeyFile);
            string strDecrypt = rsa.Decrypt(request.Data, File.ReadAllText(filePath));

            //Json反序列化
            var dataObj = JsonUtility.Deserialize<UploadInfoRequest>(strDecrypt);

            if (string.IsNullOrEmpty(dataObj.AuthorizationString) || false == dataObj.AuthorizationString.Trim().StartsWith("Basic "))
            {
                return new ApiResponse<bool>().Failed(ResultEnum.ParameterError);
            }

            //提取用户名和密码
            string strBase64 = dataObj.AuthorizationString.Substring(6);
            var src = Base64Encrypt.DecryptString(strBase64);

            var userAndPwd = src.Split(new[] { ":" }, StringSplitOptions.RemoveEmptyEntries);
            if (userAndPwd.Length != 2)
            {
                return new ApiResponse<bool>().Failed(ResultEnum.ParameterError);
            }

            //持久化数据
            var model = new CmrUser()
            {
                UserName = userAndPwd[0].Trim(),
                Password = userAndPwd[1].Trim()
            };

            var result = CmrUserService.SaveOrUpdate(model);
            return result;
        }