HttpClient.PostAsync第二个参数设置HttpContent 发送Json数据。

需要这是这个content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");

如果这是这样 : client.DefaultRequestHeaders.Add("ContentType", "application/json"); 设置去请求有时候会不成功,服务端不认。说你mediaType不正确。

 public async static Task<string> SendRequest(string url, string data)
{
var responseJson = "";
var client = new HttpClient();
try
{
client.Timeout = new TimeSpan(1, 0, 0, 0, 0);
client.DefaultRequestHeaders.Add("Connection", "Keep-Alive");
client.DefaultRequestHeaders.Add("Keep-Alive", "timeout=600");
client.DefaultRequestHeaders.Add("ContentType", "application/json");
client.DefaultRequestHeaders.Add("Accept", "*/*"); HttpContent content = new StringContent(data);
content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json");
var Result =await client.PostAsync(url, content);
if (Result.StatusCode == System.Net.HttpStatusCode.OK)
{
responseJson = await Result.Content.ReadAsStringAsync();
}
else
{
throw new Exception("Request Url is " + url+ " Response is " + Result.StatusCode);
}
if (string.IsNullOrEmpty(responseJson))
{
throw new Exception("Request Url is " + url + " Response is " + Result.StatusCode);
}
}
catch (Exception ex)
{
throw;
}
finally
{
client.Dispose();
}
return await Task.FromResult(responseJson);
}

  

 
 

HttpClient.PostAsynct 发送Json数据的更多相关文章

  1. HttpClient发送Json数据到指定接口

    项目中遇到将Json数据发送到指定接口,于是结合网上利用HttpClient进行发送. /** * post发送json数据 * @param url * @param param * @return ...

  2. SpringMVC客户端发送json数据时报400错误

    当测试客户端发送json数据给服务器时,找不到响应路径? 原来是参数类型不符,即使是json也要考虑参数的个数和类型 解决:将age请求参数由"udf"改为"3" ...

  3. iOS开发网络篇—发送json数据给服务器以及多值参数

    iOS开发网络篇—发送json数据给服务器以及多值参数 一.发送JSON数据给服务器 发送JSON数据给服务器的步骤: (1)一定要使用POST请求 (2)设置请求头 (3)设置JSON数据为请求体 ...

  4. 【转】iOS开发网络篇—发送json数据给服务器以及多值参数

    原文: http://www.cnblogs.com/wendingding/p/3950132.html 一.发送JSON数据给服务器 发送JSON数据给服务器的步骤: (1)一定要使用POST请求 ...

  5. perl post发送json数据

    sub  wx_init {                #$login_url ="https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxinit?r=- ...

  6. JSON的简单使用_向前台发送JSON数据

    转自:http://www.cnblogs.com/digdeep/p/5574366.html 1.前台页面 <%@ page language="java" conten ...

  7. python 全栈开发,Day75(Django与Ajax,文件上传,ajax发送json数据,基于Ajax的文件上传,SweetAlert插件)

    昨日内容回顾 基于对象的跨表查询 正向查询:关联属性在A表中,所以A对象找关联B表数据,正向查询 反向查询:关联属性在A表中,所以B对象找A对象,反向查询 一对多: 按字段:xx book ----- ...

  8. IOS-网络(发送JSON数据给服务器和多值参数)

    三步走: 1.使用POST请求 2.设置请求头 [request setValue:@"application/json" forHTTPHeaderField:@"Co ...

  9. ajax使用向Spring MVC发送JSON数据出现 org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported错误

    ajax使用向Spring MVC发送JSON数据时,后端Controller在接受JSON数据时报org.springframework.web.HttpMediaTypeNotSupportedE ...

  10. Django与Ajax,文件上传,ajax发送json数据,基于Ajax的文件上传,SweetAlert插件

    一.Django与Ajax AJAX准备知识:JSON 什么是 JSON ? JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻 ...

随机推荐

  1. 0基础读顶会论文—Kappa:一种用于无服务器计算的编程框架

    原文链接 代码:快速使用kappa 首先的首先,可以先去了解一下lambda架构 Abstract 在本文中提出了Kappa,一个简化无服务器开发的框架.它使用检查点来处理lambda函数超时,并提供 ...

  2. Redis学习笔记整理

    一.Redis概述 1.redis简介 Redis(REmote DIctionary Server 远程字典服务器)是一款开源的,用ANSI C编写.支持网络.基于内存.亦可持久化的日志型.Key- ...

  3. Ansible自动化管理集群,Playbook语法

    Ansible配置文件存在优先级的问题 ANSIBLE_CONFIG ansible.cfg 项目目录 .ansible.cfg 当前用户的家目录 /etc/ansible/ansible.cfg A ...

  4. DDCA —— 内存架构和子系统&存储器控制器

    1. 内存架构和子系统 1.1 如何控制访问? 访问控制: 存储单元的访问是通过 访问晶体管(access transistors) 进行控制的.访问晶体管像开关一样,可以连接或断开存储单元和位线(b ...

  5. apache2和nginx卸载总是不干净不完全导致无法重装,重装成功也无法启动

    大着胆子把nginx卸载了用的命令是  sudo apt remove nginx 结果最后不知道怎么折腾的就算重新装也装不上了,然后就转头折腾apache2,也卸载了  sudo apt remov ...

  6. 点击Popover外区域自动关闭Popover (popover close when click outside)

    $(document).on('click', function (e) { $('[data-toggle="popover"],[data-original-title]'). ...

  7. RabbitMQ的四种交换机类型

    前言 这是相关技能的详解系列,是将东西整理归纳总结,系列的进行记录与分享,这种方式更有完善性,更能成体系的学习一个技能,方便我们掌握他,这也是我们这种系列的目标,希望在跟着学习了解完这个系列后,就能将 ...

  8. Tornado框架之基础(一)

    知识点 了解什么是Tornado框架 了解Tornado与Django的区别 Tornado的安装 了解Tornado的原理 掌握Tornado的基本写法 掌握Tornado的基本模块 tornado ...

  9. 设计模式【3.2】-- JDK动态代理源码分析有多香?

    前面文章有说到代理模式:http://aphysia.cn/archives/dynamicagentdesignpattern 那么回顾一下,代理模式怎么来的?假设有个需求: 在系统中所有的 con ...

  10. OSG开发笔记(三十六):osg3.4.0基于windows平台msvc2017x64编译器编译并移植Demo

    前言   本篇编译osg3.4.0的msvc2017x64版本,之前使用的都是mingw32版本.   OSG编译 步骤一:下载解压   下载3.4.0版本.   步骤二:使用cmake配置      ...