Example #1
0
        /// <summary>
        /// 调用数据中心接口(用于上传文件)
        /// </summary>
        /// <param name="userName"></param>
        /// <param name="signName"></param>
        /// <param name="functionName"></param>
        /// <param name="parasObj"></param>
        /// <param name="data"></param>
        /// <param name="appList"></param>
        /// <returns></returns>
        public static DataCenterResult PostDataCenter(string userName, string signName, string functionName, object parasObj, byte[] data, List <Apps> appList)
        {
            string appPwd = "";
            string appKey = "";
            string apiUrl = "";

            FxtApiCommon.GetNowApiInfo(Common.appId, appList, out apiUrl, out appPwd, out appKey);
            //apiUrl = "http://192.168.1.104:8100/dc/active";
            string nowTime = DateTime.Now.ToString("yyyyMMddHHmmss");
            string sinfo   = JsonHelp.ToJSONjss(new
            {
                functionname = functionName,
                appid        = Common.appId,
                apppwd       = appPwd,
                signname     = signName,
                time         = nowTime,
                code         = Common.GetCode(signName, nowTime, functionName, appList)
            });
            string info = JsonHelp.ToJSONjss(new
            {
                uinfo   = new { username = userName, token = "" },
                appinfo = new
                {
                    splatype    = "win",
                    platVer     = "2007",
                    stype       = "",//验证
                    version     = "4.26",
                    vcode       = "1",
                    systypecode = Common.systypeCode.ToString(),    //验证
                    channel     = "360"
                },
                funinfo = parasObj
            });
            string url = apiUrl + "/upload";

            url = url + "?sinfo=" + sinfo.EncodeField() + "&info=" + info.EncodeField();
            HttpWebRequest webrequest = (HttpWebRequest)WebRequest.Create(url);

            webrequest.ContentType = "application/octet-stream";
            webrequest.Method      = "POST";
            Stream requestStream = webrequest.GetRequestStream();

            byte[] boundaryBytes = Encoding.ASCII.GetBytes("\r\n–—————————7d930d1a850658–\r\n");
            requestStream.Write(data, 0, data.Length);
            // 输入尾部数据
            requestStream.Write(boundaryBytes, 0, boundaryBytes.Length);
            WebResponse  responce = webrequest.GetResponse();
            Stream       s        = responce.GetResponseStream();
            StreamReader sr       = new StreamReader(s);
            // 返回数据流(源码)
            string           str    = sr.ReadToEnd();
            DataCenterResult result = Common.GetDataCenterResult(str);

            return(result);
        }
Example #2
0
        /// <summary>
        /// 用于功能机密
        /// </summary>
        /// <param name="signname"></param>
        /// <param name="time"></param>
        /// <param name="functionname"></param>
        /// <param name="appList">当前拥有拥有的appList</param>
        /// <returns></returns>
        public static string GetCode(string signname, string time, string functionname, List <UserCenter_Apps> appList)
        {
            string appPwd = "";
            string appKey = "";
            string appUrl = "";

            FxtApiCommon.GetNowApiInfo(Common.appId, appList, out appUrl, out appPwd, out appKey);
            string[] pwdArray = { Common.appId.ToString(), appPwd, signname, time, functionname };
            string   code     = EncryptHelper.GetMd5(pwdArray, appKey);

            return(code);
        }
Example #3
0
        /// <summary>
        /// 调用数据中心接口
        /// </summary>
        /// <param name="userName"></param>
        /// <param name="signName"></param>
        /// <param name="functionName"></param>
        /// <param name="parasObj"></param>
        /// <returns></returns>
        public static DataCenterResult PostDataCenter(string userName, string signName, string functionName, object parasObj, List <Apps> appList)
        {
            try
            {
                string appPwd = "";
                string appKey = "";
                string apiUrl = "";
                FxtApiCommon.GetNowApiInfo(Common.appId, appList, out apiUrl, out appPwd, out appKey);
                apiUrl = "http://localhost:40455/dc/active";
                string nowTime = DateTime.Now.ToString("yyyyMMddHHmmss");
                var    para    = new
                {
                    sinfo = JsonHelp.ToJSONjss(new
                    {
                        functionname = functionName,
                        appid        = Common.appId,
                        apppwd       = appPwd,
                        signname     = signName,
                        time         = nowTime,
                        code         = Common.GetCode(signName, nowTime, functionName, appList)
                    }),
                    info = JsonHelp.ToJSONjss(new
                    {
                        uinfo   = new { username = userName, token = "" },
                        appinfo = new
                        {
                            splatype    = "win",
                            platVer     = "2007",
                            stype       = "",//验证
                            version     = "4.26",
                            vcode       = "1",
                            systypecode = Common.systypeCode.ToString(),//验证
                            channel     = "360"
                        },
                        funinfo = parasObj
                    })
                };

                HttpClient client = new HttpClient();
                //client.BaseAddress = new Uri(apiUrl);
                client.Timeout = new TimeSpan(0, 10, 0);
                HttpResponseMessage hrm = client.PostAsJsonAsync(new Uri(apiUrl), para).Result;
                string           str    = hrm.Content.ReadAsStringAsync().Result;
                DataCenterResult result = Common.GetDataCenterResult(str);
                return(result);
            }
            catch (AggregateException ex)
            {
                throw ex;
            }
        }
Example #4
0
        /// <summary>
        /// 调用用户中心接口
        /// </summary>
        /// <param name="userName"></param>
        /// <param name="signName"></param>
        /// <param name="functionName"></param>
        /// <param name="parasObj"></param>
        /// <param name="appList">当前用户所拥有的api信息集合</param>
        /// <returns></returns>
        public static DataCenterResult PostUserCenter(string userName, string signName, string functionName, object parasObj, List <UserCenter_Apps> appList)
        {
            string appPwd = "";
            string appKey = "";
            string apiUrl = "";

            FxtApiCommon.GetNowApiInfo(Common.appId, appList, out apiUrl, out appPwd, out appKey);
            string nowTime = DateTime.Now.ToString("yyyyMMddHHmmss");
            var    para    = new
            {
                sinfo = JsonHelp.ToJSONjss(new
                {
                    functionname = functionName,
                    appid        = Common.appId,
                    apppwd       = appPwd,
                    signname     = signName,
                    time         = nowTime,
                    code         = Common.GetCode(signName, nowTime, functionName, appList)
                }),
                info = JsonHelp.ToJSONjss(new
                {
                    uinfo   = new { username = userName, token = "" },
                    appinfo = new
                    {
                        splatype    = "win",
                        platVer     = "2007",
                        stype       = "",//验证
                        version     = "4.26",
                        vcode       = "1",
                        systypecode = Common.systypeCode.ToString(),//验证
                        channel     = "360"
                    },
                    funinfo = parasObj
                })
            };

            HttpClient client = new HttpClient();
            //apiUrl = "http://192.168.1.104:8200/uc/active";
            HttpResponseMessage hrm = client.PostAsJsonAsync(apiUrl, para).Result;
            string           str    = hrm.Content.ReadAsStringAsync().Result;
            DataCenterResult result = Common.GetDataCenterResult(str);

            return(result);
        }