VB.NET中网络编程的另一种方案----system.net中的HttpWebRequest类的使用
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';
}
?>
VB.NET中网络编程的另一种方案----system.net中的HttpWebRequest类的使用的更多相关文章
- VB.NET中网络编程所需组件WinHTTP的添加
VB.NET中网络编程所需组件: WinHTTP组件:项目-->添加引用-->COM选项卡-->Microsoft WinHTTP Services,version 5.1--> ...
- Java网络编程和NIO详解1:JAVA 中原生的 socket 通信机制
Java网络编程和NIO详解1:JAVA 中原生的 socket 通信机制 JAVA 中原生的 socket 通信机制 摘要:本文属于原创,欢迎转载,转载请保留出处:https://github.co ...
- 聊聊iOS中网络编程长连接的那些事
1.长连接在iOS开发中的应用 常见的短连接应用场景:一般的App的网络请求都是基于Http1.0进行的,使用的是NSURLConnection.NSURLSession或者是AFNetworking ...
- javascript 网络是否连接的几种方案
js 网络是否连接的几种方案 1.通过html5的新属性: window.onload = function () { var isOnLine = navigator.on ...
- python中网络编程
网络编程软件架构介绍: C/S:客户端,服务端 B/S:浏览器,服务端 # 常见应用: 1.手机端看着感觉是c/s架构其实更多的是b/s架构,例如微信小程序,支付宝第三方接口 2.pc端:b/s比较火 ...
- python中网络编程之线程
网络编程之线程 什么是线程? 程序的执行线路.每个进程默认有一条线程.线程包含了程序的具体步骤. 多线程就是一个进程中有除主线程(默认线程)外还有多个线程. 线程与进程的关系(进程包含线程,而线程依赖 ...
- python中网络编程基础
一:什么是c\s架构 1.c\s即client\server 客户端\服务端架构. 客户端因特定的请求而联系服务器并发送必要的数据等待服务器的回应最后完成请求 服务端:存在的意义就是等待客户端的请求, ...
- linux中网络编程<1>
1 网络编程API (1)网络层的ip地址可以唯一标识网络中的主机,传输层通过协议+端口唯一标识主机中的应用程序.这样以来使用三元组(地址,协议,端口)标识网络的进程. (2)socket---> ...
- Java中网络编程
以下内容引用自http://wiki.jikexueyuan.com/project/java/networking.html: 术语网络编程指编写跨多种设备(电脑)执行的,设备使用一个网络互相连接的 ...
随机推荐
- HDU 1054 Strategic Game(树形DP)
Strategic Game Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- 转:Selenium Grid深入学习
应网友要求写一个用Selenium Grid控制多系统多浏览器并行执行test case的例子. 因为我这里有两台机子,我打算这样演示: 一台机子启动一个作为主点节的hub 和 一个作为次节点的hub ...
- 转:Selenium中的几种等待方式,需特别注意implicitlyWait的用法
最近在项目过程中使用selenium 判断元素是否存在的时候 遇到一个很坑爹的问题, 用以下方法执行的时候每次都会等待很长一段时间,原因是因为对selenium实现方法了解不足导致一直找不到解决方法. ...
- Intent之间无法传递大数据的替代方法
/** * TODO: Activity之间传递list,对象等工具类 * * @author * @date 2014-9-12 下午5:35:38 * @version 0.1.0 */ publ ...
- VC分发包版本问题
来源:http://www.cnblogs.com/mixiyou/archive/2010/02/09/1663620.html 之前曾经写过一篇个人经历,是关于VC2005分发包版本不一致而引起应 ...
- docker rmi all
docker stop $(docker ps -a -q) docker rm $(docker ps -a -q)
- eclipse myeclipse修改工作区间 an error has occurred. see error log for more details. java.lang.nullpointerexception 问题解决
解决办法:修改项目工作空间. 修改工作空间,以前打开myEclipse时知道怎么改!现在只有找配置文件了! 步骤: MyEclipse 5.1.1 GA----->Eclipse-----> ...
- C#获取客服端ip和用户名
. 在asp.Net中专用属性: 获取服务器电脑名:page.server.manchinename 获取用户信息:page.user 获取客户端电脑名:page.request.userhostna ...
- Counting Islands II
Counting Islands II 描述 Country H is going to carry out a huge artificial islands project. The projec ...
- Byte数组和Int的互相转换
public static int bytesToInt(byte[] bytes) { int addr = bytes[0] & 0xFF; addr |= ((bytes[1] < ...