代码里有注释:

方法一,传json参数

方法二,传表单参数

方法三,传字节流

public void Post(){//方法一,传json参数var d = new {username = " ",password = " ",grant_type = "password",appcode = " ",companyid = " ",version = "1.0",};var data = JsonConvert.SerializeObject(d);HttpContent httpContent = new StringContent(data);httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");using (HttpClient httpClient = new HttpClient()){string responseJson = httpClient.PostAsync("http://192.168.8.178:1646/token", httpContent).Result.Content.ReadAsStringAsync().Result;}//方法二,传表单参数FormUrlEncodedContent formContent = new FormUrlEncodedContent(new Dictionary<string, string>(){{"username"," " },{"password"," " },{"grant_type","password" },{"appcode"," " },{"companyid"," " },{"version","1.0" },});using (HttpClient httpClient = new HttpClient()){httpClient.DefaultRequestHeaders.Add("User-Agent", @"Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)");httpClient.DefaultRequestHeaders.Add("Accept", @"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8");HttpResponseMessage response = httpClient.PostAsync("http://192.168.8.178:1646/token", formContent).Result;if (response.IsSuccessStatusCode){string result = response.Content.ReadAsStringAsync().Result;}}///方法三,传字节流   using (HttpClient http = new HttpClient()){http.DefaultRequestHeaders.Add("User-Agent", @"Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)");http.DefaultRequestHeaders.Add("Accept", @"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8");HttpResponseMessage message = null;string xx = @"{ ""username"":"" "",""password"":"" "",""grant_type"":""password"",""appcode"":"" "",""companyid"":"" "",""version"":""1.0""}";using (Stream dataStream = new MemoryStream(Encoding.Unicode.GetBytes(xx) ?? new byte[0])){using (HttpContent content = new StreamContent(dataStream)){content.Headers.Add("Content-Type", "application/x-www-form-urlencoded");var task = http.PostAsync("http://192.168.8.178:1646/token", content);message = task.Result;}}if (message != null && message.StatusCode == System.Net.HttpStatusCode.OK){using (message){string result = message.Content.ReadAsStringAsync().Result;}}}}

HttpClient 调用WebAPI时—传参的三种方式(ASP.NET MVCCORE均适用)相关推荐

  1. 详解vue路由传参的三种方式

    在我们开发vue项目的时候,路由传参几乎是我们必须要用到的,一般出现场景是,当我们点击某个组件的某个按钮时跳转到另一个组件中,并携带参数,便于第二个组件获取数据.下面我就来说说vue路由传参的三种方式 ...

  2. vue路由传参的三种方式/含页面刷新参数丢失解决方案(详细)

    vue路由传参的三种方式以及页面刷新参数丢失问题 一.路由传参的三种方式 1.传参方式一:params传参 2.传参方式二:路由属性配置传参 3.传参方式三:query传参 二.三种传递方式的区别 一 ...

  3. Vue:路由传参的三种方式

    文章目录 前言 方式一:params 传参(显示参数) 1.声明式 router-link 2.编程式 this.$router.push 方式二:params 传参(不显示参数) 1.声明式 rou ...

  4. 【vue】vue路由传参的三种方式

    前言 vue 路由传参的使用场景一般都是应用在父路由跳转到子路由时,携带参数跳转.传参方式可划分为 params 传参和 query 传参,而 params 传参又可分为在 url 中显示参数和不显示 ...

  5. 函数传参的三种方式(详细)

    最近又碰到了函数传参的问题,每次碰到都会让作者疑惑一段时间,这次干脆总结整理一下,顺便让自己更加透彻的了解传参的问题.咱们开始吧. c语言中,函数调用时传送给形参表的实参必须与形参有三个一致:类型.个 ...

  6. C++ 函数传参的三种方式

    2018-04-03 创建人:Ruo_Xiao 开发环境:VS2010 邮箱:xclsoftware@163.com 值传递:将变量名作为实参和形参.这时传给形参的是变量的值,传递是单向的.如果在执行 ...

  7. vue路由传参的三种方式区别(params,query)

    最近在做一个项目涉及到列表到详情页的参数的传递,网上搜索一下路由传参,结合自己的写法找到一种适合自己的,不过也对三种写法都有了了解,在此记录一下 1 <ul class="table_ ...

  8. vue路由传参的三种方式

    目录 1.动态路由传参 2.params传参 3.query传参 1.动态路由传参 使用"路径参数"使用冒号 : 标记.当匹配到一个路由时,参数值会被设置到 this.$route ...

  9. 路由传参的三种方式(query/params)

    路由带参数: 传参方式可划分为 params 传参和 query 传参,而 params 传参又可分为在 url 中显示参数和不显示参数两种方式 1.params 传参(显示参数)又可分为 声明式 和 ...

最新文章

  1. 鱼眼镜头标定基本原理及实现
  2. 腾讯的张小龙是一个什么样的人
  3. Linux Kernel TCP/IP Stack — Socket Layer
  4. 怎么理解python的__init___理解Python中super()和__init__()方法
  5. python ==》 内置函数
  6. java安全编码指南之:锁的双重检测
  7. C语言图形库——EasyX常用函数
  8. Java 数据结构与算法面试 链表
  9. arm汇编语言调用C函数之参数传递
  10. 超级列表框排序mysql_超级列表框排序
  11. 【Hoxton.SR1版本】Spring Cloud Sleuth分布式请求链路跟踪
  12. Win10系统安装教程
  13. Python Network(二)绘图draw系列draw(),draw_networkx(),draw_networkx_nodes(),draw_networkx_edges()
  14. day 55 定位流(相对,绝对,固定)
  15. 数据结构实验6_压缩矩阵的转置、普通转置、快速转置算法
  16. BIM模型文件下载——某三层办公楼建筑Revit模型
  17. 提醒软件如何设置语音提醒功能?
  18. 电脑如何识别服务器的硬盘分区,bios如何识别新硬盘分区
  19. 清华镜像安装Python第三方库
  20. 合肥工业大学密码学课设-RSA

热门文章

  1. mysql安装教程 没配置_MySQL安装和配置详细教程
  2. migration mysql_MySql 使用 EF Core 2.0 CodeFirst、DbFirst、数据库迁移(Migration)介绍及示例...
  3. php程序yii是什么意思,Yii框架啥意思
  4. neo4j-admin导入海量数据
  5. 网络流题目详讲+题单(提高版)(持续更新中......)
  6. 详解使用flask_paginate进行分页
  7. 二叉搜索树介绍及其接口说明
  8. 加载spring上下文的多种方式总结
  9. php5.*.* iis 安装
  10. The Linux SG_IO ioctl in the 2.6 series