Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.NET WebClient 400错误_.net_Http_Protocols_Webclient_Http Status Code 400 - Fatal编程技术网

.NET WebClient 400错误

.NET WebClient 400错误,.net,http,protocols,webclient,http-status-code-400,.net,Http,Protocols,Webclient,Http Status Code 400,我正在使用WebClient类对JSON字符串执行HTTP“PUT”,以进行弹性搜索。此代码在95%的情况下有效,但在其余情况下失败。我得到的错误是代码中有400个错误的协议。当我使用jqueryajax或一个名为Postman的Chrome扩展发布相同的JSON时,它可以完美地工作。我不知道如何避免这个错误。我的代码在下面- string json = "{some json}"; WebClient client = new WebClient(); client.Headers["Cont

我正在使用WebClient类对JSON字符串执行HTTP“PUT”,以进行弹性搜索。此代码在95%的情况下有效,但在其余情况下失败。我得到的错误是代码中有400个错误的协议。当我使用jqueryajax或一个名为Postman的Chrome扩展发布相同的JSON时,它可以完美地工作。我不知道如何避免这个错误。我的代码在下面-

string json = "{some json}";
WebClient client = new WebClient();
client.Headers["Content-Type"] = "application/json;charset=UTF-8";    

try
{
     json = client.UploadString(URL, "PUT", json);
}
catch (WebException ex)
{
     //catch exception
}

弹性搜索需要一些WebClient无法通过的标题。我使用了HttpWebRequest类,它工作得很好,没有任何错误