傳遞URL 到網頁元件,並取得連線結果的返回值

傳遞URL 到網頁元件,並取得連線結果的返回值

在實務工作中,因有需要將特定字元組合而成的URL,傳送到internet。並得知其運作結果,以做下一階段的作業。
(這動作就像使用滑鼠,點選一個具超連結的網址後,看它運行的結果。)

當然,運行結果可能有 可以正常執行,看到相關網頁的內容;也可能是 找不到網頁 (Error 404)

若是在 .NET 環境中,則可以使用 HttpWebRequest 來處理。
當網頁找不到時,則會得到下列錯誤訊息的回傳字串:"遠端伺服器傳回一個錯誤: (404) 找不到。"

程式碼撰寫前中,要引用 System.Net;

接著寫個函數,以便在程式中叫用。
private string CallMsgCenterToSendMsgGet(string Url)
{
    try
    {   
            CookieContainer cookieContainer = new CookieContainer();

            string formUrl = Url;

            HttpWebRequest request = WebRequest.Create(formUrl) as HttpWebRequest;

            request.Method = "GET";
            request.KeepAlive = false;
            request.AllowAutoRedirect = true;
            request.ContentType = "application/x-www-form-urlencoded";
            request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)";
            request.CookieContainer = cookieContainer;

            HttpWebResponse SendSMSResponse = (HttpWebResponse)request.GetResponse(); 
            StreamReader SendSMSResponseStream = new StreamReader(SendSMSResponse.GetResponseStream());

            string strRespone = SendSMSResponseStream.ReadToEnd(); 
            SendSMSResponse.Close();
            SendSMSResponseStream.Close();
            return strRespone;
    }
    catch (WebException we)
    {
        string msg = we.Message;
        return msg;
    }
}

沒有留言: