Beispiel #1
0
        public override async Task <object> Service(IOwinContext context)
        {
            var method = context.Request.Method;
            var action = context.Request.Query["action"];

            switch (action)
            {
            case "modify_password":
                if (method != "POST")
                {
                    return(null);
                }
                var formData     = context.GetFormData();
                var account      = context.GetSession()[LoginMiddleware.LOGINED_USER_KEY]?.ToString();
                var pre_password = formData.Get("pre_password");
                var new_password = formData.Get("new_password");
                try
                {
                    return(await Task.FromResult(modifyPassword(account, pre_password, new_password)));
                }
                catch (Exception ex)
                {
                    return(await Task.FromResult(new
                    {
                        msg = ex.ToString()
                    }));
                }
            }
            return(null);
        }
Beispiel #2
0
 public override async Task<object> Service(IOwinContext context)
 {
     var method = context.Request.Method;
     var action = context.Request.Query["action"];
     switch (action)
     {
         case "modify_password":
             if (method != "POST")
                 return null;
             var formData = context.GetFormData();
             var account = context.GetSession()[LoginMiddleware.LOGINED_USER_KEY]?.ToString();
             var pre_password = formData.Get("pre_password");
             var new_password = formData.Get("new_password");
             try
             {
                 return await Task.FromResult(modifyPassword(account, pre_password, new_password));
             }
             catch (Exception ex)
             {
                 return await Task.FromResult(new
                 {
                     msg = ex.ToString()
                 });
             }
     }
     return null;
 }
        /// <summary>
        /// 获取POST提交的表单数据到对象
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="context"></param>
        /// <param name="obj"></param>
        /// <param name="valueToObject">是否将值转换为对象</param>
        /// <returns></returns>
        public static T GetFormData <T>(this IOwinContext context, T obj, bool valueToObject, String[] ignoreProperties = null)
        {
            var     jsonString = getJObject(context.GetFormData(), valueToObject, getArrayProperties(typeof(T)), ignoreProperties).ToString();
            Boolean hasCompilerGeneratedAttribute = typeof(T).GetCustomAttributes(typeof(CompilerGeneratedAttribute), false).Length > 0;

            if (hasCompilerGeneratedAttribute)
            {
                return(JsonConvert.DeserializeAnonymousType(jsonString, obj));
            }
            JsonConvert.PopulateObject(jsonString, obj);
            return(obj);
        }
        protected override object doPost(IOwinContext context)
        {
            var req = context.Request;
            var session = context.GetSession();
            var formData = context.GetFormData();
            var arg_password = formData["password"];
            if (arg_password == null)
            {
                return null;
            }
            String arg_password_str = Encoding.UTF8.GetString(Convert.FromBase64String(arg_password));
            String[] args = arg_password_str.Split(':');
            var account = args[0].Trim();
            var password = args[1];

            if (Svn.ApiController.Instance.Check(account, password))
            {
                session[LoginMiddleware.LOGINED_USER_KEY] = account;
                return ApiResult.Success();
            }
            return ApiResult.Error(context.GetText(Texts.ERROR_USER_PASSWORD_INCORRECT));
        }
        protected override object doPost(IOwinContext context)
        {
            var req          = context.Request;
            var session      = context.GetSession();
            var formData     = context.GetFormData();
            var arg_password = formData["password"];

            if (arg_password == null)
            {
                return(null);
            }
            String arg_password_str = Encoding.UTF8.GetString(Convert.FromBase64String(arg_password));

            String[] args     = arg_password_str.Split(':');
            var      account  = args[0].Trim();
            var      password = args[1];

            if (Svn.ApiController.Instance.Check(account, password))
            {
                session[LoginMiddleware.LOGINED_USER_KEY] = account;
                return(ApiResult.Success());
            }
            return(ApiResult.Error(context.GetText(Texts.ERROR_USER_PASSWORD_INCORRECT)));
        }
 /// <summary>
 /// 获取POST提交的表单数据到对象
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="context"></param>
 /// <param name="obj"></param>
 /// <returns></returns>
 public static T GetFormData <T>(this IOwinContext context, T obj, params String[] ignoreProperties)
 {
     return(context.GetFormData <T>(obj, false, ignoreProperties));
 }
 /// <summary>
 /// 获取POST提交的表单数据到对象
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="context"></param>
 /// <param name="valueToObject">是否将值转换为对象</param>
 /// <returns></returns>
 public static T GetFormData <T>(this IOwinContext context, bool valueToObject, String[] ignoreProperties = null)
     where T : class
 {
     return(getJObject(context.GetFormData(), valueToObject, getArrayProperties(typeof(T)), ignoreProperties).ToObject <T>());
 }
 /// <summary>
 /// 获取POST提交的表单数据到对象
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="context"></param>
 /// <returns></returns>
 public static T GetFormData <T>(this IOwinContext context, params String[] ignoreProperties)
     where T : class
 {
     return(context.GetFormData <T>(false, ignoreProperties));
 }
 /// <summary>
 /// 获取POST提交的表单数据到对象
 /// </summary>
 /// <param name="context"></param>
 /// <param name="type"></param>
 /// <returns></returns>
 public static Object GetFormData(this IOwinContext context, Type type)
 {
     return(getJObject(context.GetFormData(), false, getArrayProperties(type)).ToObject(type));
 }