C# HTTP系列7 HttpWebRequest.Method属性
HttpWebRequest.Method属性,获取或设置请求的方法。用于联系 Internet 资源的请求方法。 默认值为 GET。
System.Net 命名空间下提供了 WebRequestMethods 类,该类包含了 Http、File、Ftp 三个类。如下:
namespace System.Net
{
/// <summary>
/// 容器类 <see cref="T:System.Net.WebRequestMethods.Ftp" />,
/// <see cref="T:System.Net.WebRequestMethods.File" />,
///<see cref="T:System.Net.WebRequestMethods.Http" /> 类。
/// 无法继承此类
/// </summary>
public static class WebRequestMethods
{
/// <summary>表示可用于 HTTP 请求的 HTTP 协议方法的类型。</summary>
public static class Http
{
/// <summary>代表 HTTP GET 协议方法 </summary>
public const string Get = "GET"; /// <summary>表示与一个代理,它可以动态切换到隧道,如下所示的 SSL 隧道的情况下使用的 HTTP 连接协议方法。</summary>
public const string Connect = "CONNECT"; /// <summary>
/// 表示 HTTP Head 协议方法。
/// HEAD 方法等同于 GET 只是服务器仅在响应中,但不包括消息正文中返回消息头。
/// </summary>
public const string Head = "HEAD"; /// <summary>表示用来替换实体由 URI 标识的 HTTP PUT 协议方法。</summary>
public const string Put = "PUT"; /// <summary>表示用于将新实体添加作为发布到的 URI 的 HTTP POST 协议方法。</summary>
public const string Post = "POST"; /// <summary>
/// 表示在由请求统一资源标识符 (URI) 指定的位置创建一个新集合 (如页的集合) 的 HTTP MKCOL 请求。
/// </summary>
public const string MkCol = "MKCOL";
} /// <summary>
/// 表示文件可用于文件请求的协议方法的类型。
/// 此类不能被继承。
/// </summary>
public static class File
{
/// <summary>表示用于从指定位置检索文件的文件时,变协议方法。</summary>
public const string DownloadFile = "GET"; /// <summary>表示用于将文件复制到指定位置的文件将放协议方法。</summary>
public const string UploadFile = "PUT";
} /// <summary>
/// 表示可与一个 FTP 请求使用的 FTP 协议方法的类型。
/// 此类不能被继承。
/// </summary>
public static class Ftp
{
/// <summary>表示用于从 FTP 服务器下载文件的 FTP RETR 协议方法。</summary>
public const string DownloadFile = "RETR"; /// <summary>代表获取 FTP 服务器上的文件的简短列表的 FTP NLIST 协议方法。</summary>
public const string ListDirectory = "NLST"; /// <summary>表示将文件上载到 FTP 服务器的 FTP STOR 协议方法。</summary>
public const string UploadFile = "STOR"; /// <summary>表示用于删除 FTP 服务器上的文件的 FTP DELE 协议方法。</summary>
public const string DeleteFile = "DELE"; /// <summary>表示用于将文件附加到 FTP 服务器上的现有文件的 FTP APPE 协议方法。</summary>
public const string AppendFile = "APPE"; /// <summary>表示用于检索 FTP 服务器上的文件的大小的 FTP SIZE 协议方法。</summary>
public const string GetFileSize = "SIZE"; /// <summary>表示将具有唯一名称的文件上载到 FTP 服务器的 FTP STOU 协议。</summary>
public const string UploadFileWithUniqueName = "STOU"; /// <summary>表示 FTP MKD 协议方法在 FTP 服务器上创建一个目录。</summary>
public const string MakeDirectory = "MKD"; /// <summary>代表删除目录的 FTP RMD 协议方法。</summary>
public const string RemoveDirectory = "RMD"; /// <summary>代表获取 FTP 服务器上的文件的详细的列表的 FTP LIST 协议方法。</summary>
public const string ListDirectoryDetails = "LIST"; /// <summary>表示要用于从 FTP 服务器上的文件检索日期时间戳的 FTP MDTM 协议方法。</summary>
public const string GetDateTimestamp = "MDTM"; /// <summary>代表打印当前工作目录的名称的 FTP PWD 协议方法。</summary>
public const string PrintWorkingDirectory = "PWD"; /// <summary>表示重命名一个目录的 FTP RENAME 协议方法。</summary>
public const string Rename = "RENAME";
}
其中 Http 类,表示可与 HTTP 请求一起使用的 HTTP 协议方法的类型
| Connect |
表示与代理一起使用的 HTTP CONNECT 协议方法,该代理可以动态切换到隧道,如 SSL 隧道的情况。 |
| Get |
表示一个 HTTP GET 协议方法。 |
| Head |
表示一个 HTTP HEAD 协议方法。 除了服务器在响应中只返回消息头不返回消息体以外,HEAD 方法和 GET 是一样的。 |
| MkCol |
表示一个 HTTP MKCOL 请求,该请求在请求 URI(统一资源标识符)指定的位置新建集合,如页的集合。 |
| Post |
表示一个 HTTP POST 协议方法,该方法用于将新实体作为补充发送到某个 URI。 |
| Put |
表示一个 HTTP PUT 协议方法,该方法用于替换 URI 标识的实体。 |
如果 ContentLength 属性设置为-1以外的任何值,则必须将 Method 属性设置为上载数据的协议属性。
下面的代码示例设置Method属性设置为 POST。
// 设置为 'POST' 方式
myHttpWebRequest.Method = "POST";
Console.WriteLine ("\n请输入要发布到的数据 (http://www.contoso.com/codesnippets/next.asp) Uri :"); // 创建新的字符串对象以将数据发布到URL。
string inputData = Console.ReadLine (); string postData = "firstone=" + inputData;
ASCIIEncoding encoding = new ASCIIEncoding ();
byte[] byte1 = encoding.GetBytes (postData); // 设置要发布的数据的内容类型。
myHttpWebRequest.ContentType = "application/x-www-form-urlencoded"; // 设置要发布的字符串的内容长度。
myHttpWebRequest.ContentLength = byte1.Length; Stream newStream = myHttpWebRequest.GetRequestStream (); newStream.Write (byte1, , byte1.Length);
Console.WriteLine ("发送数据后“ContentLength”属性的值为 {0}", myHttpWebRequest.ContentLength); // 关闭流对象。
newStream.Close ();
C# HTTP系列7 HttpWebRequest.Method属性的更多相关文章
- C# HTTP系列3 HttpWebRequest.ContentType属性
系列目录 [已更新最新开发文章,点击查看详细] 获取或设置请求的 Content-type HTTP 标头的值.默认值为null. 常见的请求内容类型为以下几种: /// <summar ...
- HttpWebRequest.Method 属性
public static void GetHead(string url) { var http = (HttpWebRequest)WebRequest.Create(url); http.Met ...
- C# HTTP系列4 HttpWebRequest.CookieContainer属性
系列目录 [已更新最新开发文章,点击查看详细] HttpWebRequest.CookieContainer 获取或设置与此请求关联的 Cookie.默认情况下CookieContainer ...
- C# HTTP系列5 HttpWebResponse.StatusCode属性
系列目录 [已更新最新开发文章,点击查看详细] HttpWebResponse.StatusCode 属性获取响应的状态.对应 HttpStatusCode 枚举值之一. HttpStatus ...
- [转]Struts2理解--动态方法和method属性及通配符_默认Action
众所周知,默认条件下,在浏览器输入indexAction!execute.action,便会执行indexAction类里的execute方法,这样虽然方便,但可能带来安全隐患,通过url可以执行Ac ...
- Struts2理解--动态方法和method属性及通配符_默认Action
众所周知,默认条件下,在浏览器输入indexAction!execute.action,便会执行indexAction类里的execute方法,这样虽然方便,但可能带来安全隐患,通过url可以执行Ac ...
- 深入理解javascript函数系列第三篇——属性和方法
× 目录 [1]属性 [2]方法 前面的话 函数是javascript中的特殊的对象,可以拥有属性和方法,就像普通的对象拥有属性和方法一样.甚至可以用Function()构造函数来创建新的函数对象.本 ...
- 上传图片HTML <form> 标签的 method 属性
<!DOCTYPE HTML><html><body> <form action="/example/html5/demo_form.asp&quo ...
- httpWebRequest.ContentType 属性、值 类型用法
httpWebRequest.ContentType 属性.值 类型用法 冰火战地 指定将数据回发到服务器时浏览器使用的编码类型.下边是说明: application/x-www-form-urlen ...
随机推荐
- sitecore 如何创建一个渠道分类
您可以通过渠道跟踪联系人与您的品牌的所有互动.您可以将渠道与广告系列活动相关联,以便跟踪联系人与您的品牌互动的方式.通过比较各个渠道的目标转化率,您可以了解哪些渠道可以带来更好的联系参与度.您可以在体 ...
- kali渗透综合靶机(十六)--evilscience靶机
kali渗透综合靶机(十六)--evilscience靶机 一.主机发现 1.netdiscover -i eth0 -r 192.168.10.0/24 二.端口扫描 1. masscan --ra ...
- 解决 Visual Studio 符号加载不完全问题
解决 Visual Studio 符号加载不完全问题 工具 - 选项 - 搜索 "符号" - 选上服务器 | 加载所有符号, 之后符号就会显示完全
- ASP.NET Core 3.0 使用AspectCore-Framework实现AOP
AspectCore是适用于Asp.Net Core 平台的轻量级Aop(Aspect-oriented programming)解决方案,它更好的遵循Asp.Net Core的模块化开发理念,使用A ...
- 大文件SQl脚本怎么还原以及SQlsqlserver怎么全自动备份数据库
1:导出的SQl脚本文件通常大于100M左右就会还原不了,不是报错就是说系统文件找不到(sql脚本是直接拖进来的,不存在路径的问题). 2:CMD 使用 OSQL命令或者Sqlcmd命令都是可以解决的 ...
- asp.net core 系列 2 启动类 Startup.CS
学无止境,精益求精 十年河东,十年河西,莫欺少年穷 学历代表你的过去,能力代表你的现在,学习代表你的将来 在探讨Startup启动类之前,我们先来了解下Asp.NET CORE 配置应用程序的执行顺序 ...
- JS实现16进制和RGB转换
作为前端开发而言,不可避免的会遇到颜色取值,字符串和数字直接的转换,博主为此写了一个小工具,实现色值之间的在线转换. 前置知识点: parseInt, toString parseInt(value ...
- 剑指offer 8:旋转数组的最小数字
题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转.输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素.例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转 ...
- Lodash 严重安全漏洞背后 你不得不知道的 JavaScript 知识
摘要: 详解原型污染. 原文:Lodash 严重安全漏洞背后 你不得不知道的 JavaScript 知识 作者:Lucas HC Fundebug经授权转载,版权归原作者所有. 可能有信息敏感的同学已 ...
- 【MongoDB详细使用教程】三、高级查询
目录 1.使用比较运算符查询 2.使用关键字查询 2.1.in/not in 关键字 2.2.size 关键字 2.3.exists 关键字 2.4.or 关键字 3.模糊查询 4.查询结果排序 5. ...