通知

来源:互联网 发布:好吃的大米 知乎 编辑:程序博客网 时间:2024/04/27 23:00

     postdata = "service=Order_Ticket&DbName=" + oOrder.Order.B2CSite + "&orderNo=订单好"

url=地址
                                    string B2CNotify = Tools.SendDataByPost(url, postdata);//post发送通知


                   public static string SendDataByPost(string url, string postdata)
        {
            return SendDataByPost(url, postdata, System.Text.Encoding.GetEncoding("gb2312"));
        }

 

    /// <summary>
        /// post方式发送数据
        /// </summary>
        /// <param name="url">url</param>
        /// <param name="postdata">发送的数据</param>
        /// <returns>返回的结果</returns>
        public static string SendDataByPost(string url, string postdata, Encoding encoder)
        {
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);

            request.Method = WebRequestMethods.Http.Post;
            request.ContentType = "application/x-www-form-urlencoded";
            request.Timeout = 1000 * 60 * 5;
            request.ReadWriteTimeout = 1000 * 60 * 5;

            using (StreamWriter writer = new StreamWriter(request.GetRequestStream(), encoder))
            {
                writer.Write(postdata);
            }

            string result = null;
            try
            {
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                if (response.StatusCode == HttpStatusCode.OK)
                    using (StreamReader reader = new StreamReader(response.GetResponseStream(), encoder))
                    {
                        result = reader.ReadToEnd();
                    }
            }
            catch (Exception e)
            {
                throw new Exception("获取接口数据失败, " + e.ToString());
            }

            return result;
        }
        #endregion

 

 

接受通知-------------------------------------------

 

 HttpRequest request = context.Request;
            byte[] buffer = request.BinaryRead(request.ContentLength);
            string data = Encoding.GetEncoding("gb2312").GetString(buffer);
            NameValueCollection parameters = HttpUtility.ParseQueryString(data);
           
            if (parameters.Count == 0)
                return;
            bool isTrue = false;

            var sbMsg = new StringBuilder();
            switch (parameters["service"])
            {}

 

  context.Response.ContentType = "text/plain";
            if (isTrue)
            {
                context.Response.Write("OK");
            }
            else
            {
                context.Response.Write("False");
            }

原创粉丝点击