时间:2019-01-08 标签:c#system.net.webexception : 'Error on the remote server: (400) Bad Request.' - HttpWebResponse

标签 c# http

        var url = ConfigurationManager.AppSettings["URL"] + "/Archivador/MoverEnvio";

        HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);

        if (Certificado != null)
        {
            // Y añadirlo a la petición HTTP
            req.ClientCertificates.Add(Certificado);
        }

        req.Method = "PUT";
        req.ContentType = "application/json";

        ArchivadorModelPut Mover = new ArchivadorModelPut()
        {
            ID_ARCHIVADOR = idArchivador,
            ID_ENVIO = idEnvio

        };
        using (var streamWriter = new StreamWriter(req.GetRequestStream()))
        {
            string json = JsonConvert.SerializeObject(Mover);

            streamWriter.Write(json);
            streamWriter.Flush();
            streamWriter.Close();
        }
        using (HttpWebResponse resp = (HttpWebResponse)req.GetResponse())
        {
            StreamReader reader = new StreamReader(resp.GetResponseStream());
            var dato = reader.ReadToEnd();
            string returnString = resp.StatusCode.ToString();
        }

我得到了这个异常:

System.Net.WebException: 'Error on the remote server: (400) Bad Request.'

在线:

using (HttpWebResponse resp = (HttpWebResponse)req.GetResponse())

我不知道如何解决这个问题,有人可以帮助我吗? 如果您需要更多相关信息,请告诉我。

最佳答案

此异常意味着请求已成功完成,但是 400已返回 HTTP 响应。 400 HTTP 响应通常意味着您的客户端没有发送正确的数据,但这完全取决于目标服务器在什么情况下会返回 400 响应。

如果您捕捉到 WebException,您可以使用 Response查看 HTTP 响应的属性 - 根据服务器的不同,它可能包含错误描述。

如果目标服务的正常做法是返回 400 响应,那么请查看 Why does HttpWebRequest throw an exception instead returning HttpStatusCode.NotFound?对于可用于获取响应而不管状态代码如何的扩展方法。或者,您可以使用不会抛出的替代类,例如HttpClient.

关于时间:2019-01-08 标签:c#system.net.webexception : 'Error on the remote server: (400) Bad Request.' - HttpWebResponse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43891051/

相关文章:

python - 将图像从 python 客户端上传到 flask 服务器

java - Http 服务器 - Netty FileRegions 是否可重用?

c# - C#中的INSERT INTO语句中的语法错误OleDb异常无法发现错误

c# - 使用两个 Redis 实例 - 类似于 Mongos

mysql - XWiki + MySQL 数据库 : Errors

http - 在 service worker/fetch() 中识别 HTTP 304

java - 如何使用OSGI远程查看html文件

c# - 在 C#(或任何语言)中,你最喜欢的删除重复的方法是什么?

c# - 删除字符串的特定部分

c# - EntityFramework.sqlServerCompact和存储库模式MVVM