在 C# 中使用 RestSharp 发送参数请求。收到错误:JSON 正文中缺少必填字段 \ "expr"



我正在WindowsForm应用程序中编写一个简单的计算机应用程序。我想使用数学js web api(post(执行操作,但是在调用api的地方出现此错误:

错误:JSON 正文中缺少必填字段 \"expr"//响应中

我的代码在这里:

private void Equals_Click(object sender, EventArgs e)
{
var client = new RestClient("http://api.mathjs.org/v4/");
var request = new RestRequest("/expr", Method.POST);
var deger = txtCevap.Text; // txtCevap.Text is my calculator parameter
var json = JsonConvert.SerializeObject(deger);
request.AddParameter("application/json; charset=utf-8", json, ParameterType.RequestBody);
request.RequestFormat = DataFormat.Json;
IRestResponse response = client.Execute(request);
}

你能在这个话题上帮助我吗?谢谢。

对于 api.mathjs.org,您需要使用 expr 元素传递字符串或字符串[]。请在此处查看他们的要求。


var client = new RestClient("http://api.mathjs.org/v4/");
var request = new RestRequest("", Method.POST);
var deger = @"{""expr"": ""2+1""}"; // txtCevap.Text is my calculator parameter
request.AddJsonBody(deger);
request.RequestFormat = DataFormat.Json;
IRestResponse response = client.Execute(request);

响应对象的内容如下所示,您可以轻松反序列化。 它们始终具有结果和错误。

"{"result":"3","error":null}"
dynamic result = JsonConvert.DeserializeObject(response.Content);
string answer = result["result"].ToString()

相关内容

  • 没有找到相关文章

最新更新