发送一个简单的http get 请求并且响应
问题
如何发送一个简单的HTTP GET请求并且取回相应的HTTP响应。
设计
创建一个WebClient类的实例,然后使用它的DownloadData()方法。
方案
string uri = "http://server/path/WebForm.aspx";
WebClient wc = new WebClient();
Console.WriteLine("Sending an HTTP GET request to " + uri);
byte[] bResponse = wc.DownloadData(uri);
string strResponse = Encoding.ASCII.GetString(bResponse);
Console.WriteLine("HTTP response is: ");
Console.WriteLine(strResponse);
注解
WebClient类是System.Net命 名空间的一部分,默认情况下对于控制台程序是可访问的。通过WebClient.DownloadData()方法来取回一个HTTP响应是极为简单的, 但是DownLoadData()返回的只是一个字节数组(byte array),必须要通过System.Text.Encoding.ASCII.GetString()方法把它转换成一个字符串。另一种方案是使用 WebClient.OpenRead()方法并且把它与一个stream相关联:
string uri = " http://server/path/WebForm.aspx";
WebClient wc = new WebClient();
Console.WriteLine("Sending an HTTP GET request to " + uri);
Stream st = wc.OpenRead(uri);
StreamReader sr = new StreamReader(st);
string res = sr.ReadToEnd();
sr.Close();
st.Close();
Console.WriteLine("HTTP Response is ");
Console.WriteLine(res);
相比于测试ASP.NET Web应用程序,WebClient类更适合用来测试静态的HTML网页。这段代码可以用来检测ASP.NET程序发回的响应,但是要把这段代码扩展成自 动化测试程序,你需要根据期望值来检查HTTP响应。5.8节用到了本节的技术,在5.8节我们通过编程的方式来决定ASP.NET Web应用程序的ViewState值。5.11节所涉及的技术展示了如何根据给定的期望值来检查一个HTTP响应。
发送一个简单的http get 请求并且响应的更多相关文章
- 发送一个简单的HTTP GET请求并且取回响应。
string uri="http//www.baidu.com"; WebClient wc = new WebClient(); Console.WriteLine(" ...
- requests(一): 发送一个json格式的post请求
今天给一位同学解决post发送数据格式为json格式的请求,顺便确认一下问题归属. 背景: 用postman工具发送一个数据格式为json的请求,得到了服务器的响应. 用python的requests ...
- 写一个ActionFilter检测WebApi接口请求和响应
我们一般用日志记录每次Action的请求和响应,方便接口出错后排查,不过如果每个Action方法内都写操作日志太麻烦,而且客户端传递了错误JSON或XML,没法对应强类型参数,请求没法进入方法内, 把 ...
- 用JAVA发送一个XML格式的HTTP请求
import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.ByteArrayOutputStr ...
- postman:模拟发送一个需要cookie认证的请求
1.chrome 已安装插件intercept. 由于chrome安全的限制,发不出带cookie的请求.如果想要发送带cookie的请求,需要开启Interceptor. 2.chrome 浏览器要 ...
- nodejs 如何发送一个带JSON的GET请求?
GET /megacorp/employee/_search { "aggs" : { "all_interests" : { "terms" ...
- 一个简单的Post Get请求
WWW请求 using System; using System.Collections; using System.Collections.Generic; using UnityEngine; u ...
- Python网络编程 - 一个简单的客户端Get请求程序
import socket target_host = "www.baidu.com" target_port = 80 # create a socket object clie ...
- HeadFirst Jsp 04 (请求和响应作为servlet)
servlet 的存在就是为了客服服务, servlet的任务是得到一个客户的请求, 再发回一个响应. 由上图可知, web 容器会在启动后就加载所有的servlet类, 并为之创建实例和初始化 注意 ...
随机推荐
- webui layout like desktop rich client
similarity similarlike desktop js frameworklike extj js frameworklike rich client js frameworkjs lay ...
- 自己在使用的English词典
一.ESL/非母语词典 二.EFL/母语词典 1.American Heritage Dictionary 2.World Book Dictionary 3.Oxford Dictionary of ...
- Headfirst设计模式的C++实现——简单工厂模式(Simple Factory)
Pizza.h #ifndef _PIZZA_H #define _PIZZA_H #include <iostream> #include <string> class Pi ...
- 递归查找某个目录下是否存在NOTICE文件
从Catalogs.txt文件中,读取待检查的目录列表.检查这些目录中,是否存在NOTICE文件,如果没有则检查它的父目录,直到cd ..到Repository目录. 如果cd ..到Reposito ...
- jQuery 快速入门教程
内容目录 jQuery 入门 什么是jQuery 如何使用jQuery jQuery的运行原理 如何选择jQuery版本 ready() 准备就绪时执行代码 jQuery 核心:选取元素 使用jQue ...
- Shell符号展开
字符 展开 * 这个 “*” 字符意味着匹配文件名中的任意字符 shell 把 “*” 展开成了另外的东西 ,在 echo 命令被执行前. ~家目录 算术表达式展开 算术表达式展开使用这种格式: $( ...
- 动态改变EasyUI grid 列宽和隐藏列
隐藏显示 $('#yourGrid').datagrid('hideColumn','yourColumn'); $('#yourGrid').datagrid('hideColumn','yourC ...
- 用javascript操作xml
用javascript操作xml 可以使用标准DOM操作. IE创建XML MSXML2.0DOMDocument function createXMLDOM(){ var version = [ ' ...
- 如何判断list中是否包含某个元素
在python中可以通过in和not in关键字来判读一个list中是否包含一个元素: str = ['s','i','m','o','n'] if 'e' in str: print("e ...
- PHP学习心得(五)——类型
简介 PHP 支持8种基本的数据类型. 四种标量类型: boolean (布尔型) integer (整型) float (浮点型, 也称作 double) string (字符串) 两种复合类型: ...