C#实现百度ping功能

网站优化必做的事情之一,百度ping,主动推送给百度

 

文章添加时调用百度推送方法

 

        //保存
        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            if (action == DTEnums.ActionEnum.Edit.ToString()) //修改
            {
                ChkAdminLevel("channel_" + this.channel_name + "_list", DTEnums.ActionEnum.Edit.ToString()); //检查权限
                if (!DoEdit(this.id))
                {
                    JscriptMsg("保存过程中发生错误啦!", string.Empty);
                    return;
                }
                JscriptMsg("修改信息成功!", "article_list.aspx?channel_id=" + this.channel_id);
            }
            else //添加
            {
                ChkAdminLevel("channel_" + this.channel_name + "_list", DTEnums.ActionEnum.Add.ToString()); //检查权限
                int id=DoAdd();  //此  id为添加文章返回的 此篇文章的id 需要修改添加文章的方法  返回id if (!(id>0))
                {
                    JscriptMsg("保存过程中发生错误!", string.Empty);
                    return;
                }
                //获取频道模板名称
                if (channel_id == 13 || channel_id == 16 || channel_id == 18 || channel_id == 25 || channel_id == 6)
                {
                    string channelTemp = new BLL.channel().GetModel(this.channel_id).name.ToString();
                    string articleUrl = new BasePage().linkurl(channelTemp + "_show", id);
                    string[] url = new string[100];
                    url[1] = "http://www.qishunnet.com" + articleUrl;//例如生成的url如http://www.qishunnet.com/knowledge_show_132.html
                    string info = DTcms.Common.BaiDu.sendUrlToBaidu(url);                  
                    JscriptMsg("添加信息成功!", "article_list.aspx?channel_id=" + this.channel_id + "&message=添加信息成功!百度推送返回信息=" + info + "url:" + url[1]);
                    return;
                }
                JscriptMsg("添加信息成功!", "article_list.aspx?channel_id=" + this.channel_id);
            }
        }

 

 

common类库增加百度ping方法

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DTcms.Common
{
    /// <summary>
    /// 百度相关类
    /// </summary>
    public class BaiDu
    {
        /// <summary>
        /// 推送链接至百度
        /// </summary>
        /// <param name="urls">链接集合</param>
        /// <returns></returns>
        public static string sendUrlToBaidu(string[] urls)
        {
            try
            {
                string formUrl = " http://data.zz.baidu.com/urls?site=www.qishunnet.com&token=FdSmdb3LRa4JitQp";

                string formData = "";

                foreach (string url in urls)
                {
                    formData += url + "\n";
                }

                byte[] postData = System.Text.Encoding.UTF8.GetBytes(formData);

                // 设置提交的相关参数   
                System.Net.HttpWebRequest request = System.Net.WebRequest.Create(formUrl) as System.Net.HttpWebRequest;
                System.Text.Encoding myEncoding = System.Text.Encoding.UTF8;
                request.Method = "POST";
                request.KeepAlive = false;
                request.AllowAutoRedirect = true;
                request.ContentType = "text/plain";
                request.UserAgent = "curl/7.12.1";
                request.ContentLength = postData.Length;

                // 提交请求数据   
                System.IO.Stream outputStream = request.GetRequestStream();
                outputStream.Write(postData, 0, postData.Length);
                outputStream.Close();

                System.Net.HttpWebResponse response;
                System.IO.Stream responseStream;
                System.IO.StreamReader reader;
                string srcString;
                response = request.GetResponse() as System.Net.HttpWebResponse;
                responseStream = response.GetResponseStream();
                reader = new System.IO.StreamReader(responseStream, System.Text.Encoding.GetEncoding("UTF-8"));
                srcString = reader.ReadToEnd();
                string result = srcString;   //返回值赋值  
                reader.Close();
                return result;
            }
            catch (Exception ex)
            {
                return ex.Message;
            }
        }
    }
}
posted @ 2016-08-07 19:12  编程我的一切  阅读(1495)  评论(1编辑  收藏  举报