/// <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); }
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); }