Laden...

Probleme mit SSL-Webanfrage per Post

Letzter Beitrag vor 22 Tagen 9 Posts 381 Views
Probleme mit SSL-Webanfrage per Post

Hallo, ich habe in den letzten Tagen das Web rauf und runter abgesucht. Leider bekomme ich es nicht hin.

Ich möchte eine "Funktion" Programmieren welche die URL und die Post Daten übermittelt bekommt, diese an eine beliebige (http und https) Webseite schickt wo diese per php verarbeitet werden. Das Verarbeitungsergbniss wird im XML-Format zurückgemeldet. Diese XML Rückmeldung soll dann den Rückgabestring der Funktion darstellen.

Ich bekomme allerdings nur eine html-seite zurück in der ein Javaskript sowie eine "Java needed" Meldung zu finden ist.

M. Glaser

P.S.

Ich habe es vergessen. Es handelt sich um eine Windows-Forms Anwendung. (.net 9.0)

Sehr viel nimmt Dir hier https://github.com/reactiveui/refit ab. Einsteigerguide ist sehr gut.

Danke dir für die Info. Ich möchte hier möglichst keine 3rd-Party Elemente in meinem Code integrieren.

Daher möchte ich den POST Quest mit Rückgabe der XML eher basierend auf .Net und Windows Elemente erstellen.

Mit der Einstellung wirds schwer in der Software Entwicklung...

Aber dann schau in die Grundlagen-Docs: https://learn.microsoft.com/en-us/dotnet/api/system.net.http.httpclient?view=net-8.0


Edit: das mit dem HTML hab ich irgendwie überlesen. Sieht nach falscher URL und/oder falschen Parametern aus. Verifizier das mal.

Hallo GlaserMarkus25,

Ich bekomme allerdings nur eine html-seite zurück in der ein Javaskript sowie eine "Java needed" Meldung zu finden ist.

Was passiert wenn du mit Postman (o.ä. Tools) das manuell durchführst?
Wenn dort auch nur die HTML-Seite als Antwort kommt, so ist es halt die falsche URL.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

Die Seite läst sich auch mit einem Browser ansteuern, dieser zeigt die Dummy Information an.

Hier der ganze Response String (optisch aufgearbeitet xxxxx in href anstelle der URL geschrieben):

<html><body>
<script type="text/javascript" src="/aes.js" ></script>
<script>
function toNumbers(d){var e=[];d.replace(/(..)/g,function(d){e.push(parseInt(d,16))});return e}function toHex(){for(var d=[],d=1==arguments.length&&arguments[0].constructor==Array?arguments[0]:arguments,e="",f=0;f<d.length;f++)e+=(16>d[f]?"0":"")+d[f].toString(16);return e.toLowerCase()}var a=toNumbers("f655ba9d09a112d4968c63579db590b4"),b=toNumbers("98344c2eee86c3994890592585b49f80"),c=toNumbers("3fb07f95d95831f6a62f5ddb92095afd");
document.cookie="__test="+toHex(slowAES.decrypt(c,2,a,b))+"; expires=Thu, 31-Dec-37 23:55:55 GMT; path=/";
 location.href="https://xxxxx.php?i=1";
</script>
<noscript>This site requires Javascript to work, please enable Javascript in your browser or use a browser with Javascript support</noscript>
</body></html>

@Abt : Es geht nicht um einstellung sondern darum, dass die daraus abgeleitete Software möglichst rechtefrei sein soll, damit ich sie kostenlos weitergeben darf. Zudem kann es durchaus sein, dass über den Kanal Persönliche Daten fleißen, dann braucht es vermutlich eine geeignete Dokumentation wegen DSGVO ....; Hinzu kommt es dass ich schon einmal ,für einen anderen Zweck, eine 3rd Party Library genutzt hatte, diese aber in der Nachfolgeversion keine Abwärtskompatibilität mehr hatte. Im Gegenteil für den Zweck nicht mehr geeignet war.

Dein Eingangspost wirkt, als ob Du von einer XML-API sprichst.

Dein letzter Beitrag zeigt aber den Quellcode einer HTML-Frontend-Applikation, die JavaScript verwendet und mal mit XML nichts zutun hat. Das fällt unter das Thema WebCrawling; Du willst also eine Webseite aufrufen, als sei man ein Browser.

.NET hat keine solche Implementierung mehr von Haus aus. Es gibt nur den HttpClient als moderne Variante, die aber eben ein HTTP Client darstellt und keinen Browser.

Willst Du einen "Browser emulieren, der jede beliebe Seite ausführen kann" - im Endeffekt also ein Webseiten-Bot - dann geht das nicht mit Hausmitteln.
Du brauchst Dann einen headless Browser wie zB WebView2 (über NuGet) oder Chromium.


In .NET wirst Du allemöglichen (offizielle und inoffizielle) Dinge immer per NuGet als Dependency hinzufügen müssen. Das ist Teil der modularen .NET Welt - und gut so.
So funktioniert das .NET Öksystem, siehe ⇒ https://mycsharp.de/forum/threads/124114/faq-das-net-oekosystem-net-net-core-net-standard-nuget-und-co

Willst Du alles selbst von Hand programmieren, dann wird das eine sehr lange Reise.

Letztlich ist es ja das Problem der Server der SSL - Site sollte einen XML-Response liefern, er liefert aber immer die gleiche html-Response.

Egal ob ich in der aufgerufenen php nur

<?php Echo "Dummy"; ?>

Eintrag. der String mit Dummy läst sich nicht vom Server übertragen, dank SSL (für nicht ssl funktioniert es ja)