C# HttpWebRequest详解

这篇具有很好参考价值的文章主要介绍了C# HttpWebRequest详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

HttpWebRequest和HttpWebResponse类是用于发送和接收HTTP数据的最好选择。它们支持一系列有用的属性。这两个类位 于System.Net命名空间,默认情况下这个类对于控制台程序来说是可访问的。请注意,HttpWebRequest对象不是利用new关键字通过构 造函数来创建的,而是利用工厂机制(factory mechanism)通过Create()方法来创建的。另外,你可能预计需要显式地调用一个“Send”方法,实际上不需要。接下来调用 HttpWebRequest.GetResponse()方法返回的是一个HttpWebResponse对象。你可以把HTTP响应的数据流 (stream)绑定到一个StreamReader对象,然后就可以通过ReadToEnd()方法把整个HTTP响应作为一个字符串取回。也可以通过 StreamReader.ReadLine()方法逐行取回HTTP响应的内容。

下面是一个最简单的HttpWebRequest请求和相应

我们只需要传url,就可以向服务器发送请求,并接收回复了。

//创建HttpWeb请求
HttpWebRequest request = (HttpWebRequest)WebRequest.Create (url);
//创建HttpWeb相应
HttpWebResponse response = (HttpWebResponse)request.GetResponse ();

Console.WriteLine ("Content length is {0}", response.ContentLength);
Console.WriteLine ("Content type is {0}", response.ContentType);

//获取response的流
Stream receiveStream = response.GetResponseStream ();

//使用streamReader读取流数据
StreamReader readStream = new StreamReader (receiveStream, Encoding.UTF8);

Console.WriteLine ("Response stream received.");
Console.WriteLine (readStream.ReadToEnd ());
response.Close ();
readStream.Close ();

C# HttpWebRequest提交数据方式其实就是GET和POST两种,那么具体的实现以及操作注意事项是什么呢?那么本文就向你详细介绍C# HttpWebRequest提交数据方式的这两种利器。

C# HttpWebRequest提交数据方式学习之前我们先来看看什么是HttpWebRequest,它是 .net 基类库中的一个类,在命名空间 System.Net 下面,用来使用户通过HTTP协议和服务器交互。

C# HttpWebRequest的作用:

HttpWebRequest对HTTP协议进行了完整的封装,对HTTP协议中的 Header, Content, Cookie 都做了属性和方法的支持,很容易就能编写出一个模拟浏览器自动登录的程序。
 

C# HttpWebRequest提交数据方式:

程序使用HTTP协议和服务器交互主要是进行数据的提交,通常数据的提交是通过 GET 和 POST 两种方式来完成,下面对这两种方式进行一下说明:

C# HttpWebRequest提交数据方式1. GET 方式。

GET 方式通过在网络地址附加参数来完成数据的提交,比如在地址 http://www.google.com/webhp?hl=zh-CN 中,前面部分 http://www.google.com/webhp 表示数据提交的网址,后面部分 hl=zh-CN 表示附加的参数,其中 hl 表示一个键(key), zh-CN 表示这个键对应的值(value)。程序代码如下:

HttpWebRequest req =  

(HttpWebRequest) HttpWebRequest.Create(  

"http://www.google.com/webhp?hl=zh-CN" ); 

req.Method = "GET"; 

using (WebResponse wr = req.GetResponse()) 

{ 

   //在这里对接收到的页面内容进行处理 

}

C# HttpWebRequest提交数据方式2. POST 方式。

POST 方式通过在页面内容中填写参数的方法来完成数据的提交,参数的格式和 GET 方式一样,是类似于 hl=zh-CN&newwindow=1 这样的结构。程序代码如下:文章来源地址https://www.toymoban.com/news/detail-791309.html

到了这里,关于C# HttpWebRequest详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【笔记】Unity编程(C#语言详解)

    从灵魂、身体、行为三个层面来看,脚本(Script)为游戏注入了生动的元素。脚本代码并非独立运行的程序,它依赖于Unity引擎的运行环境,并需附加到特定对象上。在Unity脚本中,没有像传统程序中的\\\"main\\\"函数,而是用于更新游戏循环中的对象。Unity为脚本提供了API以便访问

    2024年02月03日
    浏览(53)
  • C#多线程开发详解

    多线程允许程序同时执行多个任务,从而有效利用多核处理器,加快程序的执行速度。特别是在需要处理大量计算、I/O 操作或并行任务的应用中,多线程可以显著提高性能。 多线程使应用能够同时处理多个用户请求或事件,提高了应用的响应性。例如,多线程可以保持用户

    2024年02月13日
    浏览(34)
  • C#插件式开发——详解程序集Assemblies

    Assembly是.net中的基本部署单元,也是所有类型的容器。程序集包含编译类型及其 IL(中间语言)代码、运行时资源和信息,以助于版本控制、安全和引用其他程序集。程序集定义了类型解析和安全许可的边界。 一般来说,一个程序集包括一个单一的Windows可移植执行文件(P

    2024年02月04日
    浏览(37)
  • 【一文详解】知识分享:(C#开发学习快速入门)

    c语言 是面向过程。 c++ 是面向过程+面向对象。 c# 是纯粹的面向对象: 核心思想是以人的思维习惯来分析和解决问题。万物皆对象 。 面向对象开发步骤: 分析对象 特征 行为 关系(对象关系/类关系) 写代码: 特征–成员变量 方法–成员方法 实例化–具体对象 Note(补充知识)

    2024年01月19日
    浏览(67)
  • 基于C#语言的GUI开发,主要介绍WPF框架

    下面是几种常见基于.Net的界面开发框架,都是Microsoft提供,下面简介由GPT生成 WinForms (Windows Forms WPF (Windows Presentation Foundation) UWP (Universal Windows Platform) MAUI (Multi-platform App UI) WinForms(Windows Forms): 介绍: WinForms是由Microsoft提供的用于开发Windows桌面应用程序的UI框架。它使用简单

    2024年02月03日
    浏览(46)
  • 刘铁猛C#语言入门详解课程听课笔记--初识类与命名空间

    类:构成程序的主体;C语言是一门面向过程的程序设计语言,所以其用函数来组织程序;C#语言是一门完全面向对象的程序设计语言,其用类来组织程序,类是构成程序的主体,任何一个方法和变量都必须隶属于某一个具体的类;而C++也是一门面向对象的程序设计语言,但是

    2024年02月13日
    浏览(35)
  • 串口通信利器:SerialPortStream库详解,轻松实现C#串口开发

      概述: RJCP.DLL.SerialPortStream库为C#串口通信提供强大支持,跨平台、高度可定制,集成基础功能如打开、配置串口和数据读写,以及高级功能包括事件处理、超时设置等,极大简化串口开发流程,适用于不同平台和复杂通信需求。 RJCP.DLL.SerialPortStream库用于C#中串口通信的开

    2024年03月09日
    浏览(58)
  • C# Solidworks二次开发:程序工具界面和选项相关API详解

    大家好,今天要讲的是关于程序工具相关的API介绍。 下面是要介绍的API: (1)第一个为GetAutoPartSimplification,这个API的含义为获取简化配置的指针,下面是官方具体解释: 其输入参数的类型在上一篇文章中已经介绍过了gtError_e,返回值为指向简化配置的指针。 (2)第二个为Ge

    2024年04月17日
    浏览(51)
  • C# Solidworks二次开发:创建距离配合以及移动组件API详解

    今天要讲的文章是关于如何创建距离配合和移动组件的API详解。 (1)创建配合API,CreateMate() 这个API的解释是根据指定的特性数据对象来创建配合,也就可以理解为输入什么样的特征对象就可以创建出什么配合,这个API的输入参数类型为object,返回的参数类型为Feature。 而输

    2024年02月09日
    浏览(56)
  • 【Java】后端开发语言Java和C#,两者对比注解和属性的区别以及作用

    欢迎来到《小5讲堂》 大家好,我是全栈小5。 这是《Java》序列文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对知识点的理解和掌握。 温馨提示:博主能力有限,理解水平有限

    2024年01月16日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包