【发布时间】:2020-01-02 06:46:30
【问题描述】:
我在 MVC 中调用 Web API 发布方法 Restsharp C#。下面是 web api 和控制器方法的代码。
API方法
public class GrowthController : ApiController
{
private readonly IEncoderDecoder encoderDecoderRepository;
public GrowthController(IEncoderDecoder _EncoderDecoderRepository)
{
this.encoderDecoderRepository = _EncoderDecoderRepository;
}
[HttpPost]
public object EncodeDecodeString([FromBody]string data)
{
// data value is coming null.
}
}
调用 Web API。
var clientR = new RestClient("https://service.testing.com/Api/Growth/EncodeDecodeString");
var request = new RestRequest();
var body = new
{
data = "host_environment",
submit = "Password"
};
request.AddJsonBody(body);
request.Method = Method.POST;
var response1 = clientR.Execute(request);
var content = response1.Content;
}
【问题讨论】:
-
请求工作正常,您可以在 Fiddler 中轻松检查。您的控制器方法需要接受具有
data和submit属性的类型的对象参数,并且您需要注意序列化配置匹配。如果您使用 System.Text.Json,请记住它是区分大小写的。
标签: c# asp.net-mvc asp.net-web-api restsharp