1

我正在用 C# 构建一个客户端-服务器桌面应用程序,而 RestSharp 似乎在某个地方绊倒了我的程序。最奇怪的是,其他 POST 正在同一个 Node.js 服务器应用程序上工作。

这是我使用 RestSharp 的代码:

RestClient client = new RestClient("http://"+Configuration.server);
RestRequest request = new RestRequest("sync", Method.POST);

request.AddParameter("added", Indexer.getAddedJson());
request.AddParameter("removed", Indexer.getRemovedJson());

RestResponse<StatusResponse> response = (RestResponse<StatusResponse>)client.Execute<StatusResponse>(request);
e.Result = response.Data;

这不起作用 - 我的意思是它根本不会调用服务器。我也使用 Fiddler 验证了这一点。

但这确实有效:

using (var wb = new WebClient())
{
    var data = new NameValueCollection();
    data["added"] = Indexer.getAddedJson();
    data["removed"] = Indexer.getRemovedJson();

    var resp = wb.UploadValues("http://" + Configuration.server + "/sync", "POST", data);

}

我无法弄清楚我的生活发生了什么。我不想仅仅为这个请求停止使用 RestSharp,其他 POST 请求工作得很好!

这不是反序列化问题,因为 response.Content 为空。我在其他电话中也收到了 StatusResponse,所以这可能不是问题。

4

0 回答 0