因此,简而言之,我希望使用C#获取Windows Phone 8 SDK中任何网站的来源。当我把这个代码放在常规的C#Visual Studio中时,它工作正常,但是当我把这段代码放在Windows Phone 8 SDK(C#)中时,编译器在代码中给出了一个错误
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
特别是GetResponse()
那么是否有其他方法可以在不使用GetResonse()
或该行的情况下获取网站的来源,或者只是获取Windows Phone 8 SDK中网站的HTML代码的方法
非常感谢代码示例
string inputurl = "https://www.any_website_url.com/";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(inputurl);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader urlinputreader = new StreamReader(response.GetResponseStream());
string urlsourcecode = urlinputreader.ReadToEnd();
String websitesourcecode = urlsourcecode;
答案 0 :(得分:2)
WPx中的HttpWebRequest是异步的,因为GetResponse是一种同步方法,所以它不可用/不应该使用。
您需要做的是使用回调调用BeginGetResponse(),当回复可用时将调用回调,类似于;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(inputurl);
// MyCallback will be called when the response is available.
IAsyncResult result=
(IAsyncResult) request.BeginGetResponse(
new AsyncCallback(MyCallback), request);
可提供更完整的样本here。