VB.NET中网络编程的另一种方案----
system.net中的HttpWebRequest类的使用
在VB.net中进行网络编程,除了我之前写的随笔中的使用WinHttp组件进行编程,还有另一种方法就是使用HttpWebRequest。以下简要将怎么通过HttpWebRequest实现网络请求并获得数据
1、在文档中引入System.Net、System.Web和System.IO:
Imports System.Net
Imports System.Web
Imports System.IO
2、可以在对象浏览器中看到System.Net中所包含的类和方法:
我们要使用的主要是HttpWebRequest、HttpWebResponse这两个类,后期可能会用到更多。
点击按钮请求网页数据的代码:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click '定义一个HttpWebRequest类实体
Dim webRequest As HttpWebRequest 'url
webRequest = CType(Net.WebRequest.Create("http://1.mzwapitest.applinzi.com"), HttpWebRequest) Dim responseReader As StreamReader
responseReader = New StreamReader(WebRequest.GetResponse().GetResponseStream())
Dim responseData As String
responseData = responseReader.ReadToEnd()
TextBox1.Text = responseData
responseReader.Close() End Sub
请求结果为“ok”。
注:服务器php是我在新浪sae上创建的一个应用,这个应用连接我在sae上的共享数据库,连接成功会返回ok,所以本次测试结果返回ok。附上php代码:
<?php header("Content-type:text/html;charset = utf-8"); $name = $_GET['name']; if ($name=="aaa") {
echo 'mazhongwei';
} // 连主库
$db = mysql_connect(SAE_MYSQL_HOST_M.':'.SAE_MYSQL_PORT,SAE_MYSQL_USER,SAE_MYSQL_PASS);
//$db = mysql_connect(w.rdc.sae.sina.com.cn.':'.3307,ilzy5im2l1w4im2hl13miwmy3ky3l10h1y3l4wkh); // 连从库
// $db = mysql_connect(SAE_MYSQL_HOST_S.':'.SAE_MYSQL_PORT,SAE_MYSQL_USER,SAE_MYSQL_PASS); if ($db) {
// mysql_select_db(app_mzwapitest, $db);
echo 'ok';
// ...
}else {
echo 'error';
} ?>