Im Folgenden wird beispielhaft die die Methode „fetchMandators“ des Webservice aufgerufen, welche eine Auflistung der auf dem System verfügbaren Mandanten zurückgibt: |
public bool RemoteCertificateValidationCallback(Object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) { X509Certificate localCert = X509Certificate.CreateFromCertFile(@"[ZERTIFIKAT_DATEI]"); return certificate.Equals(localCert); }
private void fetchMandators_Click(object sender, EventArgs e){ String result = ""; // Das für den Demobetrieb verwendete Zertifikat zur verschlüsselten Datenübertragung wurde nicht von einer anerkannten // Zertifizierungsstelle signiert führt deshalb aufgrund von Sicherheitsbedenken standardmäßig zu einer Fehlermeldung im // Programm. Eine manuelle Prüfung schafft Abhilfe. ServicePointManager.ServerCertificateValidationCallback = RemoteCertificateValidationCallback;
//Unterdrücken des http-Headers „Expect:100-Continue“ mit dem der Server nicht richtig umgehen kann. ServicePointManager.Expect100Continue = false;
// Request Xml zur Abfrage der Mandanten erstellen. XmlDocument doc = new XmlDocument(); XmlElement request = doc.CreateElement("request"); request.SetAttribute("method", "fetchMandators"); request.SetAttribute("version", "1.0.0"); doc.AppendChild(request);
//Anfrage an den Webservice schicken */ String result = ""; using (webservice.ecsws service = new webservice.ecsws()) { service.Credentials = new NetworkCredential("[USER]", "[PASSWD]"); result = service.fetchMandators(doc.OuterXml); } // Anzeigen der Antwort MessageBox.Show(result); } |
|