.net core api项目接收 post、patch 请求 获取不到数据的解决方式

在core 的项目中   发送post 和  patch的请求 ,后端获取不到数据

请求中不添加 contentType :"application/json"

后端 

这样是得不到数据的,

查阅资料,发现  推荐

ContentType改为 "application/json"

请求可以通过 但是获取不到数据,如下图

Request  Payload

呵呵。。。。

将Payload改为标准的json

后台增加一个   FromBody

结果 ,可以get到数据

总结:在构造post patch请求获取  api 项目时,

应该在默认请求下  增加  contentType:"application/json"

后台用对象化参数   并增加  [frombody]标签

然后  data 使用标准的json 数据 ,确保 request  payload 为标准 的json即可 。。。

原文地址:https://www.cnblogs.com/niceletter/p/10141344.html

时间: 2024-10-09 01:06:10

.net core api项目接收 post、patch 请求 获取不到数据的解决方式的相关文章

.NET CORE API 使用Postman中Post请求获取不到传参问题

开发中遇到个坑 记录下. 使用Postman请求core api 接口时,按之前的使用方法(form-data , x-www-form-urlencoded)怎么设置都无法访问. 最后采用raw写入json数据,同时将Content-Type 设置为 application/json,终于请求成功. 后端代码(使用[FromBody]接收): // POST: api/Login [HttpPost] public ActionResult<string> Post([FromBody] A

详解ASP.NET Core API 的Get和Post请求使用方式

原文:详解ASP.NET Core API 的Get和Post请求使用方式 上一篇文章帮助大家解决问题不彻底导致博友使用的时候还是遇到一些问题,欢迎一起讨论.所以下面重点详细讲解我们常用的Get和Post请求( 以.net core2.2的Http[Verb]为方向 ,推荐该属性路由),如果想验证,直接利用VS2017创建ASP.NET Core API (.net core 2.2),在DefaultController里面操作.文中有些关键字,我是加了粗的,请注意一下. 帮助回忆,Get和P

Mock服务端:客户端Get请求,返回json数据两种方式

Mock服务端:客户端Get请求,返回json数据两种方式:1,直接在response中返回json数据 2,通过json文件返回: 准备工作: wiremock-body-transformer-1.1.6.jar wiremock-standalone-2.14.0.jar 安装java运行环境(jdk等) 一,直接在response中返回: 说明: mappings : 对应请求request位置 __files : 对应响应reponse位置 mappings中增减文件:get.json

jsp中Get方式请求参数乱码的两种解决方式

第一种方式: <% //获取请求包含的下旬字符串 String rawQueryStr=request.getQueryString(); //使用URLDecoder解码祖父穿 String queryStr=URLDecoder.decode(rawQueryStr, "UTF-8"); //以&符号分解查询字符串 String paramPairs[]=queryStr.split("&"); for(String paramPair:p

ASP.NET Core API 接收参数去掉烦人的 [FromBody]

在测试ASP.NET Core API 项目的时候,发现后台接口参数为类型对象,对于PostMan和Ajax的Post方法传Json数据都获取不到相应的值,后来在类型参数前面加了一个[FromBody]属性才获取到.但是我看微软官方文档演示代码中并没有添加[FromBody],难道是微软官方文档写错了,按道理应该不会.Google里看到一片篇文章里的一个细节,又追回微软官方文档发现可行,于是记下去掉这个烦人的[FromBody]过程 修改之前测试 后台通过Visual Studio生成ASP.N

ASP.NET CORE API Swagger+IdentityServer4授权验证

简介 本来不想写这篇博文,但在网上找到的文章博客都没有完整配置信息,所以这里记录下. 不了解IdentityServer4的可以看看我之前写的入门博文 Swagger 官方演示地址 源码地址 配置IdentityServer4服务端 首先创建一个新的ASP.NET Core项目. 这里选择空白项,新建空白项目 等待创建完成后,右键单击项目中的依赖项选择管理NuGet程序包,搜索IdentityServer4并安装: 等待安装完成后,下载官方提供的UI文件,并拖放到项目中.下载地址:https:/

.NET CORE API Swagger

新建一个core api  项目,使用nuget搜索Swashbuckle.AspNetCore   安装 修改项目生成属性 修改启动Startup public void ConfigureServices(IServiceCollection services) { services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); #region Swagger services.AddSwaggerGe

利用BenchmarkDotNet 测试 .Net Core API 同步和异步方法性能

事由: 这两天mentor给我布置了个任务让我用BenchmarkDotNet工具去测试一下同一个API 用同步和异步方法写性能上有什么差别. 过程: 首先 我们需要在Nuget上安装BenchMarkDotNet (安装当前最新版本,当前我已经安装好了) 但是却安装失败出现两个error. 其中一个是 第二个 ok,第二个错误非常显眼,那我先尝试着按照它的说法解决  我边在Nuget上找到 Microsoft.CodeAnalysis.CSharp 2.8.2 ,Microsoft.CodeA

IIS6中给Framework2,。0站点的虚拟目录(2.0版本)下发布Web API项目(4.0版本)问题处理

Web-API项目以虚拟目录形式部署到IIS6/IIS7 若原有站点为Framework2.0版本,在此站点(或虚拟目录站点)下,新增API虚拟目录,然后选择Framework4.0版本,IIS6和IIS7配置有所不同. IIS6配置: 1)        在主站A中的web.config中,添加<location>节点,要包住<system.web> 和<system.codedom>,节点内容如下: <location path="." a