c#HTTP PATCH 400错误

时间:2017-02-02 20:39:40

标签: c# web-services json.net http-status-code-400 httpverbs

我目前正致力于使用我的C#程序实现一个访问其余web服务的类。我设法为PUT,Post和GET做了这个,但是我有修补程序的问题。每次都会发生以下错误:

System.ddll

中存在异常错误“System.Net.WebException”

其他信息:报告的远程服务器:(400)无效请求

我研究并尝试了各种各样的东西 - 无济于事。我将不胜感激任何帮助! 非常感谢提前

    public string WebserviceSenden()
    {

        // Create a request using a URL that can receive a post. 
        WebRequest request = WebRequest.Create( GrundURL + ErweiterungsURL);
        // Set the Method property of the request to POST.
        request.Method = Methode;
        // Create POST data and convert it to a byte array.
        string postData = DateSenden;
        byte[] byteArray = Encoding.UTF8.GetBytes(postData);
        // Set the ContentType property of the WebRequest.
        request.ContentType = "application/json";      
        // Set the ContentLength property of the WebRequest.
        request.ContentLength = byteArray.Length;
        // Get the request stream.
        Stream dataStream = request.GetRequestStream();
        // Write the data to the request stream.
        dataStream.Write(byteArray, 0, byteArray.Length);
        // Close the Stream object.
        dataStream.Close();
        // Get the response.
        WebResponse response = request.GetResponse();
        // Display the status.
        Console.WriteLine(((HttpWebResponse)response).StatusDescription);
        // Get the stream containing content returned by the server.
        dataStream = response.GetResponseStream();
        // Open the stream using a StreamReader for easy access.
        StreamReader reader = new StreamReader(dataStream);
        // Read the content.
        string responseFromServer = reader.ReadToEnd();
        // Display the content.
        Console.WriteLine(responseFromServer);
        // Clean up the streams.
        reader.Close();
        dataStream.Close();
        response.Close();

        return responseFromServer;
    }

    public string WebserviceEmpfangen()
    {
        // Create a request for the URL. 
        WebRequest request = WebRequest.Create(
        GrundURL + ErweiterungsURL);
        // If required by the server, set the credentials.
        request.Credentials = CredentialCache.DefaultCredentials;
        // Get the response.
        WebResponse response = request.GetResponse();
        // Display the status.
        Console.WriteLine(((HttpWebResponse)response).StatusDescription);
        // Get the stream containing content returned by the server.
        Stream dataStream = response.GetResponseStream();
        // Open the stream using a StreamReader for easy access.
        StreamReader reader = new StreamReader(dataStream);
        // Read the content.
        string responseFromServer = reader.ReadToEnd();
        // Display the content.
        Console.WriteLine(responseFromServer);
        // Clean up the streams and the response.
        reader.Close();
        response.Close();

        return responseFromServer;
    }
}




private void button1_Click(object sender, EventArgs e)
    {
        String Jason = "";


        RestClient AbfrageStarten = new RestClient();
        AbfrageStarten.GrundURL = "URL";
        AbfrageStarten.ErweiterungsURL = "540697";
        Jason = AbfrageStarten.WebserviceEmpfangen();

        var settings = new JsonSerializerSettings
        {
            NullValueHandling = NullValueHandling.Ignore,
            MissingMemberHandling = MissingMemberHandling.Ignore
        };


        var list = JsonConvert.DeserializeObject<List<Lagereinheit>>(Jason, settings);

        KorrekturLagereinheit  = list[0];

        KorrekturLagereinheit.stueckzahl = 5858;


        string Test;
        Test = JsonConvert.SerializeObject(KorrekturLagereinheit, Formatting.None, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore });


        RestClient AntwortSenden = new RestClient();
        AntwortSenden.GrundURL = "URL";
        AntwortSenden.ErweiterungsURL = "540697";
        AntwortSenden.Methode = "Patch";
        AntwortSenden.DateSenden = Test;
        AntwortSenden.WebserviceSenden();
     }

Error message

非常感谢提前

0 个答案:

没有答案