最近項目中用到發送驗證碼這個功能,需要請求一個短信接口,并且接收請求后返回的狀態值,開始我覺得要抓取頁面內容,然后自己也就這樣做了,發現效果不理想,之后就放棄了。
接著就百度了,有人提到用HttpWebRequest,覺得很驚奇,然后就去msdn上看了看這個類,發現還真的可以實現。接著就開始改代碼。如下:
1 Random random = new Random(); 2 string message = "您好,您此次操作的驗證碼為" + random.Next(100000, 999999); 3 string url = "http://000.000.000.000/000/000?account=****&pswd=****&mobile=****&msg=內容&needstatus=true"; 4 HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url); 5 req.Method = "POST"; 6 //req.Timeout = 5000;//請求超時時間 7 string responseText = string.Empty; 8 try 9 {10 WebResponse wr = req.GetResponse();11 //在這里對接收到的頁面內容進行處理 12 StreamReader myreader = new StreamReader(wr.GetResponseStream(), Encoding.UTF8);13 responseText = myreader.ReadToEnd();//HTML返回內容14 string status = responseText.Split('/n')[0].Split(',')[1];//獲取返回的狀態值 0為提交成功15 req.Abort();16 wr.Close();17 }18 catch (Exception ex)19 {20 responseText = "NO:" + ex.Message.ToString();21 }
新聞熱點
疑難解答