Home > Software design >  Web API [FromBody] string parameter always null
Web API [FromBody] string parameter always null

Time:04-04

I've been trying to pass string data using [FromBody] but it is always null.

enter image description here

public HttpResponseMessage Post(int id, [FromBody] string value)
{
    return Request.CreateResponse(HttpStatusCode.OK, "Success");
}

enter image description here

CodePudding user response:

In ASP.NET Core you cannot simply use Model binding to get the whole JSON body text as string. You have to either create a binding model or read the request body manually:

var bodyText = await this.Request.Content.ReadAsStringAsync();

CodePudding user response:

[HttpPost]
public HttpResponseMessage Post(int id, [FromBody] string value)
{
    return Request.CreateResponse(HttpStatusCode.OK, "Success");
}

The [HttpPost] attribute tells the routing engine to send any POST requests to that action method to the one method over the other. This is a type of overloading.enter link description here

  • Related