Exemplo n.º 1
0
        /// <summary>
        /// 百度统计
        /// </summary>
        /// <returns></returns>
        public string Baidu_Statistic(string stutasday = "", string endday = "", string method = "", string metrics = "")
        {
            if (stutasday == "")
            {
                stutasday = DateTime.Now.AddDays(-30).ToString("yyyy-MM-dd");
            }
            if (endday == "")
            {
                endday = DateTime.Now.ToString("yyyy-MM-dd");
            }
            if (method == "")
            {
                method = "overview/getDistrictRpt";
            }
            if (metrics == "")
            {
                metrics = "pv_count";
            }
            //分页
            int max_results = 20;
            //固定参数文件
            string token    = "946ba06934cbac0a84ff8b2753b0bd67"; //开通统计接口Toke
            string username = "******";                            //
            string password = "******";                    //密码
            string siteId   = "11237535";                         //可通过getlist接口请求获取,或者打开站点末尾处有接siteId


            SortedDictionary <string, string> reqMap = new SortedDictionary <string, string>();
            //头文件集合
            SortedDictionary <string, string> map1 = new SortedDictionary <string, string>();

            map1.Add("account_type", "1");
            map1.Add("password", password);
            map1.Add("token", token);
            map1.Add("username", username);
            //内容文件集合
            SortedDictionary <string, string> map2 = new SortedDictionary <string, string>();

            map2.Add("siteId", siteId);
            map2.Add("method", method);                      //通常对应要查询的报告
            map2.Add("start_date", stutasday);               //开始时间
            map2.Add("end_date", endday);                    //结束时间
            map2.Add("metrics", metrics);                    //自定义指标选择,多个指标用逗号分隔
            map2.Add("max_results", max_results.ToString()); //一页显示多少条,默认0显示全部
            map2.Add("start_index ", "");                    //表示第几页,默认0

            reqMap.Add("body", JsonConvert.SerializeObject(map2));
            reqMap.Add("header", JsonConvert.SerializeObject(map1));

            var strJson = JsonConvert.SerializeObject(reqMap).Replace("\"{", "{").Replace("}\"", "}").Replace(@"\", "");
            var res     = HttpPosts.Post("https://api.baidu.com/json/tongji/v1/ReportService/getData", strJson);

            //var Result = ToResult(res);
            return(res);
        }
Exemplo n.º 2
0
        private string DoPostToUrl(string sURL, string sEmailSmtp, int iTimeoutSeconds)
        {
            string        sRet                       = string.Empty;
            string        sError                     = string.Empty;
            string        sResponse                  = string.Empty;
            string        sResponseStatusCode        = string.Empty;
            string        sResponseStatusDescription = string.Empty;
            StringBuilder oSB = new StringBuilder();

            oSB.AppendFormat("+ DoPostToUrl - Doing POST to URL: {0}\r\n", DateTime.Now);


            this.Cursor = Cursors.WaitCursor;

            bool bRet = false;


            oSB.AppendFormat("    POST...\r\n");
            oSB.AppendFormat("    Url: {0}\r\n", sURL);
            oSB.AppendFormat("    Mailbox: {0}\r\n", sEmailSmtp);

            string sRequest =
                "<Autodiscover xmlns=\"http://schemas.microsoft.com/exchange/autodiscover/outlook/requestschema/2006\">" +
                "<Request>\r\n" +
                " <EMailAddress>" + sEmailSmtp + "</EMailAddress>\r\n" +
                " <AcceptableResponseSchema>http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a</AcceptableResponseSchema>\r\n" +
                " </Request>\r\n" +
                "</Autodiscover>\r\n";

            // Do Post
            DateTime oStart = DateTime.Now;

            oSB.AppendFormat("    Starting POST: {0}\r\n", oStart.ToString());
            bRet = HttpPosts.RawPost(sURL, sRequest, iTimeoutSeconds, ref sResponse, ref sError, ref sResponseStatusCode, ref sResponseStatusDescription);
            DateTime oEnd = DateTime.Now;

            oSB.AppendFormat("    Finished POST: {0}\r\n", oEnd.ToString());
            TimeSpan oTS = oEnd.Subtract(oStart);

            oSB.AppendFormat("    Time to complete POST: {0}:{1}:{2}.{3}\r\n", oTS.Hours, oTS.Minutes, oTS.Seconds, oTS.Milliseconds);


            oSB.AppendFormat("    Response StatusCode: {0}\r\n", sResponseStatusCode);
            oSB.AppendFormat("    Response StatusDescription: {0}\r\n", sResponseStatusDescription);
            oSB.AppendFormat("    Post Suceeded: {0}\r\n", bRet.ToString());
            oSB.AppendFormat("    Error Text: {0}\r\n", sError);
            oSB.AppendFormat("    Response Text: \r\n{0}\r\n", sResponse.ToString());

            TimeSpan oTimeSpan = DateTime.Now.Subtract(oStart);

            oSB.AppendFormat("    Time to do POST: {0} miliseconds\r\n", oTimeSpan.TotalMilliseconds.ToString());

            oSB.AppendFormat("- DoPostToUrl - Doing POST to URL: {0}\r\n", DateTime.Now);

            sRet = oSB.ToString();

            this.Cursor = Cursors.Default;


            return(sRet);
        }