C# 发送 HTTP 请求
时间:2021-08-12
本文章向大家介绍C# 发送 HTTP 请求,主要包括C# 发送 HTTP 请求使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
本文内容:
- 概述
HTTP
请求 - 使用
GET
方法发送请求 - 使用
POST
方法发送请求
1、 概述
HTTP
请求通常是浏览器向服务器发送的,不过 C#
中也可以发送 HTTP
请求,本文讲解使用 C#
发送 HTTP
请求。
我这里使用的控制台(console)应用程序,其他都类似。
2、发送 GET 请求
发送请求使用 HttpClient
类,所以需要引入一下文件:
using System.Net.Http;
引入之后,初始化一个 HttpClient
类,HttpClient
类有一个 GetStringAsync
方法可以发送 GET
请求,参数为目标地址(URL)。
namespace testdemo
{
class Program
{
private static readonly HttpClient client = new HttpClient();
public static void Main()
{
Program.get();
}
public static async void get(){
var responseString = await client.GetStringAsync("http://127.0.0.1:23/api");
Console.WriteLine(responseString);
}
}
}
使用抓包工具分析,发送的 HTTP
请求的格式如下:
GET /api HTTP/1.1
Host: 127.0.0.1:23
3、发送 POST 请求
发送 post
请求也大致相似,我们要使用 PostAsync
方法。
using System.Collections.Generic;
namespace testdemo
{
class Program
{
private static readonly HttpClient client = new HttpClient();
public static void Main()
{
Program.post();
Console.Read();
}
public static async void post(){
// 创建一个字典,添加数据
Dictionary<string, string> values = new Dictionary<string, string>();
values.Add("name", "hello");
values.Add("age", "12");
// 数据转化为 key=val 格式
var content = new FormUrlEncodedContent(values);
// 发送请求
var response = await client.PostAsync("http://127.0.0.1:23", content);
// 获取数据
var responseString = await response.Content.ReadAsStringAsync();
Console.WriteLine(responseString);
}
}
}
发送的 HTTP
请求的格式如下:
POST / HTTP/1.1
Host: 127.0.0.1:23
Content-Type: application/x-www-form-urlencoded
Content-Length: 17
name=hello&age=12
原文地址:https://www.cnblogs.com/gegecode/p/15131829.html
- IDC发布IT转型报告,现代化、自动化、转型三要素必不可少
- 存储过程和触发器的应用
- 两部委印发车联网产业标准体系建设指南 提到了自动驾驶
- 状态开关按钮ToggleButton
- 微软开放 .NET 框架源代码
- Angularjs基础(十二)
- 妙趣横生的HTML5 Page Visibility API
- 禁止/移除 WordPress 4.2 中前台自动加载的 emjo 脚本
- 项目管理方面的几个.NET开源项目
- 如何向十岁以下的朋友解释编程?这个说法碉堡了!
- 快速比较和合并文件
- 前端页面中 iOS 版微信长按识别二维码的bug 与解决方案
- .NET Mass Downloader -整体下载.NET源码
- Android中Button
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法