/// <summary> /// ���������� feed �ӿ� /// </summary> /// <param name="feed"></param> /// <returns></returns> public string UcenterAddFeed(UCFeed feed) { UCRequestParms parms = new UCRequestParms(); parms["appid"] = this.Appid; parms["icon"] = feed.Icon; parms["uid"] = feed.Uid.ToString(); parms["username"] = feed.Username; parms["title_template"] = feed.TitleTemplate; parms["title_data"] = feed.TitleData; parms["body_template"] = feed.BodyData; parms["body_data"] = feed.BodyData; parms["body_general"] = feed.BodyGeneral; parms["target_ids"] = feed.TargetIDs; int j; for( int i = 0; i < 4; i++) { j = i + 1; parms[string.Format("images_{0}_url", j.ToString())] = feed.Images[i].Url; parms[string.Format("images_{0}_link", j.ToString())] = feed.Images[i].Link; } return DoRequest("feed", "add", parms); }
/// <summary> /// ucenter ���ݲ������� /// </summary> /// <param name="module"></param> /// <param name="action"></param> /// <param name="parms"></param> /// <returns></returns> private byte[] BuildRequest(string module, string action, UCRequestParms parms) { StringBuilder arg = new StringBuilder(); if (parms != null) { foreach (KeyValuePair<string, string> parm in parms) { arg.Append(parm.Key); arg.Append("="); arg.Append(Utils.UrlEncode(parm.Value)); arg.Append("&"); } arg.Remove(arg.Length - 1, 1); } string request = string.Format( "m={0}&a={1}&&inajax=2&input={2}&&appid={3}", module, action, EncodeString(arg.ToString()), this.Appid); return System.Text.Encoding.ASCII.GetBytes(request); }
/// <summary> /// ������������ /// </summary> /// <param name="module">Ucenter ģ��</param> /// <param name="actioin">����</param> /// <param name="parms">���ݲ���</param> /// <returns></returns> private string DoRequest(string module, string actioin, UCRequestParms parms) { string backstr = ""; HttpWebRequest hwr; try { if (this.ServerUrl.Contains("index.php")) { hwr = (HttpWebRequest)WebRequest.Create(this.ServerUrl); } else { hwr = (HttpWebRequest)WebRequest.Create(this.ServerUrl + "/index.php"); } byte[] requestBytes = BuildRequest(module, actioin, parms); hwr.Method = "POST"; hwr.ContentType = "application/x-www-form-urlencoded"; hwr.UserAgent = this.UserAgent; hwr.ContentLength = requestBytes.Length; Stream requestStream = hwr.GetRequestStream(); requestStream.Write(requestBytes, 0, requestBytes.Length); requestStream.Close(); HttpWebResponse res = (HttpWebResponse)hwr.GetResponse(); StreamReader sr = new StreamReader(res.GetResponseStream(), CharEncoding(this.ServerCharset)); backstr = sr.ReadToEnd(); sr.Close(); res.Close(); } catch { } return backstr; }
/// <summary> /// ������ ȡ�ػ�Ա�Ķ���Ϣ�б�ӿ� /// </summary> /// <param name="uid"></param> /// <param name="curpage"></param> /// <param name="pagesize"></param> /// <param name="folder"></param> /// <param name="filter"></param> /// <param name="msglen"></param> /// <returns></returns> public string UcenterPmList(int uid, int curpage, int pagesize, PMFolder folder, PMFilter filter, int msglen) { UCRequestParms parms = new UCRequestParms(); parms["uid"] = uid.ToString(); parms["page"] = curpage.ToString(); parms["pagesize"] = pagesize.ToString(); parms["folder"] = folder.ToString(); parms["filter"] = filter.ToString(); parms["mesglen"] = msglen.ToString(); return DoRequest("pm", "ls", parms); }