Esempio n. 1
0
        public static RequestResult <T> GetCallApi <T>(string address, bool runInBackgroud = false)
        {
            if (address.Contains("?"))
            {
                try
                {
                    var urlArr  = address.Split('?');
                    var parmStr = urlArr[1];
                    var parmArr = parmStr.Split('&').Select(x => x.Split('=').ToArray()).ToList();
                    parmArr.ForEach(x => x[1] = System.Web.HttpUtility.UrlEncode(x[1]));
                    urlArr[1] = string.Join("&", parmArr.Select(x => string.Join("=", x)).ToArray());
                    address   = string.Join("?", urlArr);
                }
                catch { }
            }
            //address = string.Join('?', address.Split('?').se
            Logger.Error(address);
            var result = WebApiVisitor.GetAccessApi <T>(address, runInBackgroud);

            Logger.Error("测试result" + result == null ? ":null" : result.Result.ToString());
            if (result.Result == ResultStatus.Success)
            {
                return(result);
            }
            else
            {
                Logger.Error(result.Message);

                return(null);
            }
        }
Esempio n. 2
0
        public static RequestResult <T_Result> PostCallApi <T, T_Result>(string address, T t, bool runInBackgroud = false)
        {
            var result = WebApiVisitor.PostAccessApi <T, T_Result>(address, t, runInBackgroud);

            if (result.Result == ResultStatus.Success)
            {
                return(result);
            }
            else
            {
                Logger.Error(result.Message);

                return(null);
            }
        }
Esempio n. 3
0
        /// <summary>
        /// POST方式访问WebApi
        /// </summary>
        /// <typeparam name="T_Request">参数类型</typeparam>
        /// <typeparam name="T_Result">返回类型</typeparam>
        /// <param name="address">URL</param>
        /// <param name="parameter">参数</param>
        /// <returns><![CDATA[RequestResult<T_Result>]]></returns>
        public RequestResult <T_Result> PostAccessApi <T_Request, T_Result>(string address, T_Request parameter)
        {
            RequestResult <T_Result> obj = null;

            try
            {
                obj = WebApiVisitor.PostAccessApi <T_Request, T_Result>(address, parameter);
                if (CheckReLogin <T_Result>(obj))
                {
                    obj = WebApiVisitor.PostAccessApi <T_Request, T_Result>(address, parameter);
                }
            }
            catch (Exception)
            {
                obj = new RequestResult <T_Result>()
                {
                    Result  = ResultStatus.Default,
                    Data    = default(T_Result),
                    Message = "WebApi访问失败"
                };
            }
            return(obj);
        }
Esempio n. 4
0
        /// <summary>
        /// GET方式访问WebApi
        /// </summary>
        /// <typeparam name="T">返回类型</typeparam>
        /// <param name="address">URL</param>
        /// <returns><![CDATA[RequestResult<T>]]></returns>
        public RequestResult <T> GetAccessApi <T>(string address)
        {
            RequestResult <T> obj = null;

            try
            {
                obj = WebApiVisitor.GetAccessApi <T>(address);
                if (CheckReLogin <T>(obj))
                {
                    obj = WebApiVisitor.GetAccessApi <T>(address);
                }
            }
            catch (Exception)
            {
                obj = new RequestResult <T>()
                {
                    Result  = ResultStatus.Default,
                    Data    = default(T),
                    Message = "WebApi访问失败"
                };
            }
            return(obj);
        }