下面的第一个清单是使用 RestSharp 库。第二个使用 Hammock REST API 库。它们非常相似。Hammock 一个有效,RestSharp 一个无效。'config' 对象是一个 DTO 对象。RestSharp 版本甚至不发送消息,也不会抛出异常。无论我将方法设置为 PUT 还是 POST 都没有区别,行为是相同的。
我到底做错了什么?
@@
var client = new RestClient() { BaseUrl = "http://server/AgentProxy", };
var request = new RestRequest() { Resource = "/AgentConfiguration", Method = Method.POST, RequestFormat = DataFormat.Json };
request.DateFormat = DateFormat.Iso8601;
request.AddHeader("content-type", "application/json; charset=utf-8");
request.AddBody(config);
client.Execute(request);
@@
@@
var client = new Hammock.RestClient() { Authority = "http://server/AgentProxy" };
var request = new Hammock.RestRequest() { Path = "/AgentConfiguration", Method = Hammock.Web.WebMethod.Post, Timeout = new TimeSpan(0, 0, 5), Credentials = null };
request.AddHeader("content-type", "application/json; charset=utf-8");
request.AddPostContent(Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(config, new IsoDateTimeConverter())));
client.Request(request);
@@
这两个库看起来相似多于不同。两者都使用 Newtonsoft Json 库。
谢谢你的时间,吉姆