问题

我正在为RSS阅读服务构建一个客户端.我正在使用 RestSharp 库与他们的API交互.

API说明:

在创建或更新记录时,必须将 application/json;charset=utf-8 设置为 Content-Type 头。

这是我的代码看起来像:

 RestRequest request = new RestRequest("/v2/starred_entries.json", Method.POST);
request.AddHeader("Content-Type", "application/json; charset=utf-8");
request.RequestFormat = DataFormat.Json;
request.AddParameter("starred_entries", id);

//Pass the request to the RestSharp client
Messagebox.Show(rest.ExecuteAsPost(request, "POST").Content);
 

但是,服务返回错误

错误415:请使用’Content-Type:application / json;charset = utf-8’标题

为什么RestSharp不传递标题?

  最佳答案

上提供的解决方案我的博客未在RestSharp版本1.02之后进行测试.如果您使用我的解决方案提交我的答案中的具体问题的评论,我可以更新它.

 var client = new RestClient("http://www.example.com/where/else?key=value");
var request = new RestRequest();

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

var response = client.Execute(request);
 

  相同标签的其他问题

c#http-headersrestsharp