1、UploadData方法(Content-Type:application/x-www-form-urlencoded)

    //创建WebClient 对象
            WebClient webClient = new WebClient();
            //地址
            string path = "http://******";
            //需要上传的数据
            string postString = "username=***&password=***&grant_type=***";
            //以form表单的形式上传
            webClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
            // 转化成二进制数组
            byte[] postData = Encoding.UTF8.GetBytes(postString);
            // 上传数据
            byte[] responseData = webClient.UploadData(path, "POST", postData);
            //获取返回的二进制数据
            string result = Encoding.UTF8.GetString(responseData);

2、UploadData方法(Content-Type:application/json)

     //创建WebClient 对象
            WebClient webClient = new WebClient();
            //地址
            string path = "http://******";
            //需要上传的数据
            string jsonStr = "{\"pageNo\":1,\"pageSize\":3,\"keyWord\":\"\"}";

       //如果调用的方法需要身份验证则必须加如下请求标头
            string token = "eyJhbGciOiJSUzI..................";
            webClient.Headers.Add(HttpRequestHeader.Authorization, $"Bearer {token}");

       //或者webClient.Headers.Add("Authorization", $"Bearer {token}");

       //以json的形式上传
            webClient.Headers.Add("Content-Type", "application/json");
            // 转化成二进制数组
            byte[] postData = Encoding.UTF8.GetBytes(jsonStr);
            // 上传数据
            byte[] responseData = webClient.UploadData(path, "POST", postData);
            //获取返回的二进制数据
            string result = Encoding.UTF8.GetString(responseData);

3、DownloadData方法

      WebClient webClient = new WebClient();
            string path = "http://******";

       //如果调用的方法需要身份验证则必须加如下请求标头
            string token = "eyJhbGciOiJSUzI1NiIs.........";
            webClient.Headers.Add(HttpRequestHeader.Authorization, $"Bearer {token}");

    // 下载数据
            byte[] responseData = webClient.DownloadData(path);
            string result = Encoding.UTF8.GetString(responseData);

4、DownloadString方法

      //创建WebClient 对象
            WebClient webClient = new WebClient();
            //地址
            string path = "http://******";

       //如果调用的方法需要身份验证则必须加如下请求标头
            string token = "eyJhbGciOiJSUzI1NiIsI.................";
            //设置请求头--名称/值对
            webClient.Headers.Add(HttpRequestHeader.Authorization, $"Bearer {token}");
            //设置请求查询条件--名称/值对
            webClient.QueryString.Add("type_S", "我的类型");
            // 下载数据
            string responseData = webClient.DownloadString(path);

C# WebClient几种常用方法的用法的更多相关文章

  1. 在Quartus II中分配管脚的两种常用方法

    在Quartus II中分配管脚的两种常用方法 示范程序 seg7_test.v 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 /* * ...

  2. NSString的几种常用方法

    NSString的几种常用方法   要把 “2011-11-29” 改写成 “2011/11/29”一开始想用ios的时间格式,后来用NSString的方法搞定. [string stringByRe ...

  3. SharedPreferences 的另一种场景的用法

    SharedPreferences 的另一种场景的用法 昨天,下班在家想做什么来着,然后想用SharedPreferences存点数据,但是不知道咋地突然想到,SharedPreferences是应用 ...

  4. [转]jQuery的each方法的几种常用的用法

    下面提一下jQuery的each方法的几种常用的用法 复制代码 代码如下:  var arr = [ "one", "two", "three&quo ...

  5. Java中从控制台输入数据的几种常用方法

    Java中从控制台输入数据的几种常用方法 一.使用标准输入串System.in //System.in.read()一次只读入一个字节数据,而我们通常要取得一个字符串或一组数字 //System.in ...

  6. jQuery验证元素是否为空的两种常用方法

    这篇文章主要介绍了jQuery验证元素是否为空的两种常用方法,实例分析了两种常用的判断为空技巧,非常具有实用价值,需要的朋友可以参考下 本文实例讲述了jQuery验证元素是否为空的两种常用方法.分享给 ...

  7. 避免常见的6种HTML5错误用法

    一.不要使用section作为div的替代品 人们在标签使用中最常见到的错误之一就是随意将HTML5的<section>等价于<div>——具体地说,就是直接用作替代品(用于样 ...

  8. Java更新XML的四种常用方法简介

    本文简要的讨论了Java语言编程中更新XML文档的四种常用方法,并且分析这四种方法的优劣.其次,本文还对如何控制Java程序输出的XML文档的格式做了展开论述. JAXP是Java API for X ...

  9. vue——props的两种常用方法

    vue--props的两种常用方法 1.实现父-->子的通信 举例如下: 父组件 parent.vue <children :channel="object1"> ...

随机推荐

  1. Redis持久化机制,优缺点,如何选择合适方式

    一.什么是Redis持久化? 持久化就是把内存的数据写到磁盘中去,防止服务宕机了内存数据丢失. 二.Redis 的持久化机制是什么?各自的优缺点? Redis 提供两种持久化机制 RDB(默认) 和 ...

  2. C#数据结构与算法系列(十五):排序算法(SortAlgorithm)

    1.介绍 排序是将一组数据,以指定的顺序进行排序的过程 2.分类 内部排序法:指将需要处理的所有数据都加载到内部存储器中进行排序 外部排序法:数据量过大,无法全部加载到内存中,需要借助外部存储进行排序

  3. 【SpringBoot MQ 系列】RabbitListener 消费基本使用姿势介绍

    [MQ 系列]RabbitListener 消费基本使用姿势介绍 之前介绍了 rabbitmq 的消息发送姿势,既然有发送,当然就得有消费者,在 SpringBoot 环境下,消费可以说比较简单了,借 ...

  4. BOM问题-对于php的影响

    甲.BOM说明 BOM(Byte Order Mark),是UTF编码方案里用于标识编码的标准标记.这个标记是可选的,UTF-8不需要BOM来表明字节顺序,但可以用BOM来表明当前编码方式.但如果文件 ...

  5. 入门大数据---Spark简介

    一.简介 Spark 于 2009 年诞生于加州大学伯克利分校 AMPLab,2013 年被捐赠给 Apache 软件基金会,2014 年 2 月成为 Apache 的顶级项目.相对于 MapRedu ...

  6. ubuntu添加新的分辨率选项(干货)

    ubuntu默认可选的分辨率不能够满足我的需求,在这里记录增加1440*900分辨率的过程 1. 终端输入: cvt 1440 900 2. 修改配置文件: vim /etc/profile xran ...

  7. 《Java核心技术(卷1)》笔记:第8章 泛型程序设计

    (P 327)"菱形"语法: ArrayList<String> files = new ArrayList<>(); // Java 9 扩展了菱形语法的 ...

  8. Python分析最近大火的网剧《隐秘的角落》,看看网友们有什么看法

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 估计最近很火的连续剧<隐秘的角落>大家趁着端午假期都看过了吧? ...

  9. AdminLTE 2.4

    https://jeesite.gitee.io/front/AdminLTE/2.4/index2.html

  10. 2.在linux安装ssh_免密连接

    Linux开启ssh服务 首先更新源 sudo apt-get update 安装ssh服务 sudo apt-get install openssh-server 检测是否已启动 ps -e | g ...