1
Ich habe ein Problem mit der Übergabe von XML-Datei vom Client zu API. Ich verwende HttpClient, um eine Verbindung herzustellen. Mein Code:Post Xml mit HttpClient in C#
ServicePointManager.ServerCertificateValidationCallback += (sender, cert, chain, sslPolicyErrors) => true;
/*var serializer = new XmlSerializer(typeof(InitUploadType));
serializer.Serialize(data);*/
XmlDocument doc = new XmlDocument();
doc.Load("initupload-sign.xml");
WebRequestHandler handler = new WebRequestHandler();
X509Certificate2 certificate = new X509Certificate2("cert.crt");
handler.ClientCertificates.Add(certificate);
HttpClient client = new HttpClient(handler);
client.BaseAddress = new Uri("https://test-e-dokumenty.mf.gov.pl");
client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/xml"));
var response = client.PostAsJsonAsync<XmlDocument>("/api/Storage/InitUploadSigned", doc).Result;
return response.ToString();
I Bad Request empfange 400.
Sie können ein Tool wie Fiddler verwenden, um zu sehen, was vom Client gesendet/empfangen wird. Es wird Ihnen helfen, herauszufinden, was passiert, weil ein HTTP 400-Fehler eine Menge Dinge bedeuten kann. – Vincent
Ich ging auf die URL https://test-e-dokumentement.mf.gov.pl mit einem IE-Browser und erhielt keine XML-Daten. – jdweng