C#使用HttpWebRequest发送数据和使用HttpWebResponse接收数据的一个简单示例
新建一个.NET Core控制台项目,代码如下所示:
using System;
using System.Text;
using System.Net;
using System.Collections.Generic; namespace NetCoreWebRequest
{
class Program
{
static void Main(string[] args)
{
HttpWebRequest httpWebRequest = WebRequest.Create("http://www.baidu.com") as HttpWebRequest; httpWebRequest.Method = "POST"; using (var requestStream = httpWebRequest.GetRequestStream())
{
byte[] data = Encoding.UTF8.GetBytes("Hello"); requestStream.Write(data, , data.Length);
requestStream.Flush();
} using (HttpWebResponse response = httpWebRequest.GetResponse() as HttpWebResponse)
{
using (var responseStream = response.GetResponseStream())
{
byte[] readBuffer = new byte[];
List<byte> allData = new List<byte>();
int readBytes; do
{
readBytes = responseStream.Read(readBuffer, , readBuffer.Length); for (var i = ; i < readBytes; i++)
{
allData.Add(readBuffer[i]);
} } while (readBytes > );//如果readBytes为0表示HttpWebResponse中的所有数据已经被读取完毕 string message = Encoding.UTF8.GetString(allData.ToArray());
Console.WriteLine(message);
}
} Console.WriteLine("Press key to end...");
Console.ReadKey();
}
}
}
注意本文阐述的重点是,上面代码中,如果responseStream.Read(readBuffer, 0, readBuffer.Length)返回的值readBytes为 0了,表示HttpWebResponse中的所有数据已经被读取完毕了。
C#使用HttpWebRequest发送数据和使用HttpWebResponse接收数据的一个简单示例的更多相关文章
- postman发送数据,django 获取接收数据
postman发起请求如下图 在django中使用如下方式获取token print(request.META) token = request.META.get('HTTP_X_TOKEN')
- ASP.NET前台html页面AJAX提交数据后台ashx页面接收数据
摘要:最近在写网站,好不容易弄好了需求又变了,没错企业的门户网站硬要弄成后台管理系统一样,没办法作为小工的我只能默默的改.前台HTML页面需要提交数据到后台处理,又不能用form表单,于是乎研究了1天 ...
- TCP网络编程-----客户端请求连接服务器、向服务器发数据、从服务器接收数据、关闭连接
SOCKET m_sockClient; unsigned short portNum; ------------------------------------------------------- ...
- MPTCP 源码分析(四) 发送和接收数据
简述: MPTCP在发送数据方面和TCP的区别是可以从多条路径中选择一条 路径来发送数据.MPTCP在接收数据方面与TCP的区别是子路径对无序包 进行重排后,MPTCP的mpcb需要多所有子 ...
- STM32 串口USART DMA方式发送接收数据
硬件:stm32f103cbt6 软件:STM32F10x_StdPeriph_Lib_V3.5.0 文章目录 头文件 USART3_DR的地址 DMA的通道 DMA的中断 USART接收回调函数 头 ...
- 数据表格,查询、导出共用一个form表单,实现文件流方式下载
在开发中遇到问题是这样的: 在维护老的管理系统的过程中,老板说让加导出功能:项目中,查询的筛选条件是用的表单提交的方式写的. 解决方案有两种: 一.用ajax方式导出 var array = $('# ...
- 使用HttpWebRequest和HttpWebResponse时接收数据中文乱码的情况
今天在调试一个get请求的接口的时候发现HttpWebResponse方法接收数据的时候,中文出现乱码的情况. 原因是格式编码转码的问题. 原来自从Windows 2000之后的操作系统在文件处理时默 ...
- 使用HttpWebRequest发送自定义POST请求
平时用浏览器看网页的时候,点击一下submit按钮的时候其实就是给服务器发送了一个POST请求.但是如何在自己的C#程序里面实现类似的功能呢?本文给出了一个简单的范例,可以实现类似的和web serv ...
- 使用 HttpWebRequest 发送模拟 POST 请求
使用HttpWebRequest发送模拟POST请求 网页中,如果form的method="POST",这时点击submit按钮可以给服务器发送了一个POST请求,如果metho ...
随机推荐
- SSIS-WMI监视文件夹
在文档交互数据时,通常会排个job每隔几分钟执行来解析文档,但是jOb不能排的太频繁了,所以文档不能及时的被解析. 在SSIS中可以使用WMI这个组件来监视文件夹,一旦有新文档丢入就马上执行解析程序, ...
- Window 2003 IIS + MySQL + PHP + Zend 环境配置
图文详解 下载 Windows 2003 Zend, PHP, PHPMyadmin 与 MySQL Windows 2003 安装包中包含了 Zend,PHP 5.2.17,PHPWind8.7 和 ...
- 201671010456-张琼 实验十四 团队项目评审&课程学习总结
博文简要信息表 项目 内容 这个作业属于哪个课程 http://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu- ...
- redis主从+redis的哨兵模式
三台机器分布 192.168.189.129 // master的角色 192.168.189.130 // slave1的角色 192.168.189.131 // salve2的角色 ...
- CF Educational Round 78 (Div2)题解报告A~E
CF Educational Round 78 (Div2)题解报告A~E A:Two Rival Students 依题意模拟即可 #include<bits/stdc++.h> us ...
- 微信小程序 scroll-view 横向滚动条 隐藏无效
看了许多网上教程说是添加如下样式可以解决,我加入到组件wxss中无效,加入全局wxss生效. 添加css代码如下: ::-webkit-scrollbar { ; ; color: transpare ...
- 【题解】CF161B Discounts
目录 题目 思路 \(Code\) 题目 CF161B Discounts 思路 贪心.很显然对于一个板凳(价格为c)所能使我们最多少花费\(\frac{c}{2}\)的金钱. 原因如下: 如果你将一 ...
- 【DP】【P5615】 [MtOI2019] 时间跳跃
Description 给定 \(n\) 条边,第 \(i\) 条边的长度为 \(i\),每条边都有 \(50\%\) 的概率被选择,求如果选出的边能组成一个平面凸多边形,则方案的权值是方案中边的数量 ...
- 二分类问题F-score评判指标(转载)
分类模型的评价指标Fscore 小书匠深度学习 分类方法常用的评估模型好坏的方法. 0.预设问题 假设我现在有一个二分类任务,是分析100封邮件是否是垃圾邮件,其中不是垃圾邮件有65封,是垃圾邮件有3 ...
- sharding-jdbc 分布式数据库中间件
小编今天在做Sharding-jdbc时出现了一些问题,就上网百一百,发现网上的sharding-jdbc的参考是挺少的,唉还是要继续学习看文档. Sharding-jdbc介绍 Sharding-J ...