【问题标题】:Invalid JSON String - UnsupportedMediaType - RestSharp POST request无效的 JSON 字符串 - UnsupportedMediaType - RestSharp POST 请求
【发布时间】:2016-05-26 05:28:50
【问题描述】:

所以我使用 RestSharp 向需要 application\json. 的端点发出 POST 请求,我初始化了 RestClient 并请求并使用 request.AddHeader("Content-Type","application/json") 并随后调用request.AddParameter(),但我得到的错误是Invalid JSON String,状态代码为UnsupportedMediaType,还提到Expected application/json or text/json body. 知道发生了什么吗?我该如何解决这个问题?

我也尝试使用自定义序列化程序,但无济于事。该请求在 Chrome 的 Advanced Rest Client 上成功运行。

【问题讨论】:

  • 添加代码以了解您哪里出错了
  • 下载邮递员,添加您的电话,点击restSharp中的复制代码按钮
  • @Caz1224 代码不正确,它和我一直在做的事情一样:/

标签: c# asp.net request restsharp


【解决方案1】:

以下是通过 Rest Sharp 执行调用的标准代码,将数据作为 Http Body 传递

var client = new RestClient("<Http Url>");

var request = new RestRequest();

request.Method = Method.POST;
request.AddHeader("Accept", "application/json");
request.Parameters.Clear();
request.AddParameter("application/json", "<Valid Json>", ParameterType.RequestBody);

var response = client.Execute(request);

也请查看以下link

【讨论】:

  • 谢谢!您知道生成“”字符串的任何巧妙方法吗?
  • 是的,json 只是一种文本格式,要么在jsonlint.com 中检查它,要么更好地获取一个 C# 对象并使用 Newtonsoft Json 二进制文件执行 JsonConvert.Serialize,它总是会产生有效的 json
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-28
  • 1970-01-01
  • 2020-04-03
  • 1970-01-01
  • 1970-01-01
  • 2023-03-17
相关资源
最近更新 更多