- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
这可能是非常基本的东西,但我无法弄清楚我哪里出错了。
我试图从 POST 正文中获取字符串,但“jsonString”仅显示为 null。我也想避免使用模型,但也许这是不可能的。我用 PostMan 打的这段代码是这个 block :
[Route("Edit/Test")]
[HttpPost]
public void Test(int id, [FromBody] string jsonString)
{
...
}
也许这是我对 postman 做的不正确的事情,但我一直在尝试在 body - x-www-form- 的值部分使用“=test”(正如在其他关于该主题的问题中所见) urlencoded 部分,键为 jsonString,什么都没有。我也尝试过使用原始文本和原始文本/纯文本。我得到了 id,所以我知道 url 是正确的。对此的任何帮助将不胜感激。
PostMan 目前是这样设置的:
POST http://localhost:8000/Edit/Test?id=111
key = id value = 111
Body - x-www-form-urlencoded
key = jsonString value = "=test"
最佳答案
通过使用 [FromBody]
声明 jsonString 参数,您告诉 ASP.NET Core 使用输入格式化程序将提供的 JSON(或 XML)绑定(bind)到模型。所以如果你提供一个简单的模型类,你的测试应该可以工作
public class MyModel
{
public string Key {get; set;}
}
[Route("Edit/Test")]
[HttpPost]
public void Test(int id, [FromBody] MyModel model)
{
... model.Key....
}
和发送的 JSON,如
{
key: "value"
}
当然,您可以跳过模型绑定(bind)并直接通过访问 Controller 中的 HttpContext.Request
来检索提供的数据。 HttpContext.Request.Body
属性为您提供内容流,或者您可以通过 HttpContext.Request.Forms
访问表单数据。
由于类型安全,我个人更喜欢模型绑定(bind)。
关于c# - FromBody 字符串参数为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40853188/
这是基本设置,我有一个 asp.net core webapi Controller (在 C# 中),具有如下的 post 函数: [HttpPost] public ActionResult Po
这是基本设置,我有一个 asp.net 核心 webapi Controller (在 c# 中),带有一个像这样的 post 函数: [HttpPost] public ActionResult P
这是 Asp.Net Webform 应用程序 这是我的 Apicontroller 中的 POST 方法 public void Post([FromBody]string value) { } 我
这可能是非常基本的东西,但我无法弄清楚我哪里出错了。 我试图从 POST 正文中获取字符串,但“jsonString”仅显示为 null。我也想避免使用模型,但也许这是不可能的。我用 PostMan
在 Web API (2) 中使用属性路由时,我希望能够自动将路由参数从 URL 获取到模型参数中。这样做的原因是我的验证是在它到达操作之前在过滤器中执行的,如果没有它,附加信息就不容易获得。 考虑以
我收到了这样的请求。 POST /API/Event?EventID=15&UserID=1&Severity=5&DeptID=1&FlowTag=CE HTTP/1.1 Content-Type:
在 ASP.NET Core(本例中为 2.1)的 Controller 中使用 [FromBody] 时,它会处理所有到指定模型的转换并确保模型有效。这意味着如果提供的输入格式错误, Control
我正在尝试传递一个包含不同数据类型的对象。我总是在 Web API 中获取 orderDetails 的空值。 但是如果这样做, purchaseOrder.Attachments = null, 然
我有一个使用 ASP.NET Core 构建的新 API,但我无法将任何数据发布到端点。 这是端点的样子: [HttpPost] [Route("StudentResults")] public as
有没有[FromBody]属性的作用?我的意思是,当我使用它时: public async Task SetUser([FromBody]User 用户) 当我使用时: public async Ta
我似乎遇到了一个有趣的 Web API 问题 - 使用这个 Controller 操作,在左大括号上设置断点来检查 thing: [HttpPut] public void Test([FromBod
这个问题在这里已经有了答案: Web api attribute routing, by content type, in dot net core 2? (1 个回答) 关闭 4 年前。 客户端可
RESTful 设计更喜欢 URL 或 [FromBody] 中的数据吗? 假设我有一个 Controller 方法: [Route("ServiceActivity({serviceActivity
我有一个应该是非常基本的场景......我觉得我之前已经做过 100 次但由于某种原因它决定不工作并将我的时间浪费在一些琐碎的事情上...... 我正在使用带有属性路由的 WebAPI(喜欢它们)。
您好,我想通过我在 Web API Controller 中的 body 变量从 C# 客户端调用 Web Api 方法一直为空。如何正确设置? 客户端: IFileService imgServic
我在 web api 中有一个新方法 [HttpPost] public ApiResponse PushMessage( [FromUri] string x, [FromUri] string y
我有一个类似于 ASP.NET MVC 4 RC Web API Parameter Binding Issue 的问题,但我正在尝试使用 [FromBody] 属性来解决它。 Fiddler 报告以
我的 body 参数始终为 null 时遇到问题。这是 Controller : [HttpPost] public async void Assign([FromUri] int[]
我可以将我的数据发送到服务器,但只有当我使用 FromBody-Attribute 时。 为什么没有使用 Post 自动从 Body 中读取 json 数据? 后端网页接口(interface) [H
当我尝试发送请求“http://localhost:1234/api/case/create?signature=123456”时来自 Postman(谷歌扩展)在正文请求中使用“表单数据”,我收到错
我是一名优秀的程序员,十分优秀!