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. 使用Kubernetes、K3s和Traefik2进行本地开发

    作者简介 Vyacheslav,拥有运维和项目管理经验的软件工程师 这篇文章将承接我此前搭建的本地Docker开发环境,具体步骤已经放在在以下网址: https://github.com/Vorone ...

  2. String类基础知识

    1.String类的构造方法 (1)String(String original)  //把字符串数据封装成字符串对象 (2)String(char[] c)   //把字符数组的数据封装成字符串对象 ...

  3. pikachu靶场-暴力破解(验证码、token)

    甲.基于表单的破解 较为简单,直接BurpSuite爆破. 乙.验证码绕过(on server) 打开题目,比第一题多了一个验证码验证,很多初学者遇到验证码就会感觉不知所措.其实这题也较为简单,首先正 ...

  4. SpringBoot--使用Mybatis分页插件

    1.导入分页插件包和jpa包 <dependency> <groupId>org.springframework.boot</groupId> <artifa ...

  5. 【WPF】DataGrid多表头的样式设计

    需求 在使用WPF开发时,使用DataGrid列表显示数据时,有些字段可以进行分组显示,用于更好的表达它们之间存在的某种关系,因此就考虑到要对DataGrid的表头进行扩展,可以显示多行表头,让这些有 ...

  6. 判断CString 字符串里面是否全部为数字

    //原理就是去除0-9的数字,判断去除数字后的字符串是否为空,如果为空,说明字符串全部都是为数字,否则得话,就不是. strOutTimeOnNum = strouttime.TrimLeft( _T ...

  7. 使用Xmanager连接linux,操作“xhost +”时出现类似“xhost: unable to open display "192.168.1.1811:1.0" ”问题的解决

    远程连接linux服务器时,有的时候需要把服务器上的图形界面投影到本地来进一步操作,比如linux下安装oracle时就需要在oracle用户下允许视图状态投影到本地,这需要使用命令: xhost + ...

  8. 注解式HTTP请求Feign (F版)

    Spring Cloud 为开发者提供了在分布式系统中的一些常用的组件(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁定,决策竞选,分布式会话集群状态).使用Sprin ...

  9. HTML5全局属性汇总

    局部属性和全局属性 局部属性:有些元素能规定自己的属性,这种属性称为局部属性.比如link元素,它具有的局部属性有href. rel. hreflang. media. type. sizes这六个. ...

  10. 原生开发、H5开发、混合移动开发的优缺点

    一.原生开发(Native App开发) 原生开发,是在Android.IOS等移动平台上利用官方提供的开发语言.开发类库.开发工具进行App开发.比如Android是利用Java.Eclipse.A ...