2013-10-11 26 views
0

我正在C#中创建一个简单的Web浏览器。我被告知不要使用提供的webbrowser类,所以我必须编写所有代码。我正在努力从我的网址加载页面。这里是我的代码:HttpWebRequest从字符串重新排版

private void toolStripButton5_Click(object sender, EventArgs e) 
    { 
     url = "http://" + toolStripTextBox1.Text; 
     HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); 
     HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 
     Stream pageStream = response.GetResponseStream(); 
     StreamReader reader = new StreamReader(pageStream); 
    } 

StripButton5对应我的表单中的导航按钮。我遇到的问题是当我输入地址如www.google.com。该页面只是挂起并且不加载。任何建议感激。

+0

你必须做一些'回应'。这之后有什么代码?即你有答案,现在你想用它做什么。 –

+0

“页面挂起”是什么意思?如果通过“page”表示响应主体,那么DeeMac表示您需要使用StreamReader(response.GetResponseStream()) –

+0

@DeeMac做些什么我已经用响应后的更新代码编辑了OP。我添加了一个流和一个StreamReader。该页面仍然没有加载。 – b0w3rb0w3r

回答

2

不得不编码,然后阅读HTML然后让浏览器显示它在HTML中。

private void toolStripButton5_Click(object sender, EventArgs e) 
{ 
    url = "http://" + toolStripTextBox1.Text; 
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); 
    HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 
    Stream pageStream = response.GetResponseStream(); 
    StreamReader reader = new StreamReader(pageStream,Encoding.Default); 
    string s = reader.ReadToEnd(); 
    webBrowser1.DocumentText = s; 
} 
+0

排序......... –

+1

不要忘记处理请求/响应/流 –