標籤:
using System.Collections.Generic;using System.Linq;using System.Text;using System.Net;using System.IO;using System;namespace KL.EDMS.Business.Report{ public class FaultCountLogic { //註:本次請求為向androidpnserver發送請求實現後台向用戶端的訊息推送 public string SentHttpRequest() { //請求路徑 string url = "http://localhost:7070/notification.do"; //定義request並設定request的路徑 WebRequest request = WebRequest.Create(url); //定義請求的方式 request.Method = "POST"; //初始化request參數 string postData = "action=send&broadcast=Y&uri=112332&username=f8df247d0b2b4277b122f68c94c2caab"; postData +="&title=C#發送後台請求"; postData += "&message=利用C#後台向androidpnserver發送HTTP請求實現用戶端的訊息推送功能。"; //設定參數的編碼格式,解決中文亂碼 byte[] byteArray = Encoding.UTF8.GetBytes(postData); //設定request的MIME類型及內容長度 request.ContentType = "application/x-www-form-urlencoded"; request.ContentLength = byteArray.Length; //開啟request字元流 Stream dataStream = request.GetRequestStream(); dataStream.Write(byteArray, 0, byteArray.Length); dataStream.Close(); //定義response為前面的request響應 WebResponse response = request.GetResponse(); //擷取相應的狀態碼 Console.WriteLine(((HttpWebResponse)response).StatusDescription); //定義response字元流 dataStream = response.GetResponseStream(); StreamReader reader = new StreamReader(dataStream); string responseFromServer = reader.ReadToEnd();//讀取所有 Console.WriteLine(responseFromServer); //關閉資源 reader.Close(); dataStream.Close(); response.Close(); return responseFromServer; } }}
C#後台發送HTTP請求