AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Login Webservice Delphi

Ein Thema von RomeoAnfänger · begonnen am 8. Jul 2020 · letzter Beitrag vom 16. Jul 2020
Antwort Antwort
Rolf Frei

Registriert seit: 19. Jun 2006
655 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Login Webservice Delphi

  Alt 10. Jul 2020, 13:41
Ich habe den Eindruck du machst auf den Server ein normales Delphi Programm mit GUI Elementen. Das kann und wird so nie funktionieren. Mach eine WebBroker Anwendung die du dann per IIS nutzt. Für so was Simples würde ich eine CGI-Exe erstellen, die dann viel einfacher zu administrieren ist als eine ISAPI-DLL. Wenn du kein IIS auf dem Server hast, kanst du auch eine WebBroker Webserveranwendung erstellen. Diese enthält dann die nötigen Webserverfunktionen, für die normalerweise IIS zuständig ist, allerdings nur sehr "primitiv".

Allfällige Fehler und Antworten musst du dann als HTML-Code retour geben. Du darfst da keine Formen und Dialoge nutzen, da das so zu einer "hängenden" Webabfrage führt, die dann irgendwann mit eine Timeout retour kommt. Schliesslich sitzt niemand am Server und beantwortet die Dialoge. Exception werden auch als Webantworten mit Statuscode 500 an den Browser/dein Client zurückgeschickt.

Das geht mit dem Delphi WebBroker Framework super einfach und ist für deine Aufgabe die einfachste und beste Lösung. Lies dir da mal die Doku dazu durch, wenn du Delphi Webbroker noch nie genutzt hast.

Geändert von Rolf Frei (10. Jul 2020 um 14:10 Uhr)
  Mit Zitat antworten Zitat
RomeoAnfänger

Registriert seit: 29. Mai 2020
23 Beiträge
 
#2

AW: Login Webservice Delphi

  Alt 12. Jul 2020, 11:52
Ich habe den Eindruck du machst auf den Server ein normales Delphi Programm mit GUI Elementen. Das kann und wird so nie funktionieren. Mach eine WebBroker Anwendung die du dann per IIS nutzt. Für so was Simples würde ich eine CGI-Exe erstellen, die dann viel einfacher zu administrieren ist als eine ISAPI-DLL. Wenn du kein IIS auf dem Server hast, kanst du auch eine WebBroker Webserveranwendung erstellen. Diese enthält dann die nötigen Webserverfunktionen, für die normalerweise IIS zuständig ist, allerdings nur sehr "primitiv".

Allfällige Fehler und Antworten musst du dann als HTML-Code retour geben. Du darfst da keine Formen und Dialoge nutzen, da das so zu einer "hängenden" Webabfrage führt, die dann irgendwann mit eine Timeout retour kommt. Schliesslich sitzt niemand am Server und beantwortet die Dialoge. Exception werden auch als Webantworten mit Statuscode 500 an den Browser/dein Client zurückgeschickt.

Das geht mit dem Delphi WebBroker Framework super einfach und ist für deine Aufgabe die einfachste und beste Lösung. Lies dir da mal die Doku dazu durch, wenn du Delphi Webbroker noch nie genutzt hast.
Ich habe SOAP Server verwendet und als Database nutze ich NexusDB Server.Hier mache ich die Implementierung für eine MobileApp und glaube,HTML-code ist dann bei uns nicht verwendet.

Mein Client ist hier die App ,das heißt die App soll auf iOS und Android laufen können.

Weißt du ,wie sollen die Webservices auf dem Client.exe laufen ?Ich meine ,ich habe in meinem Fall 4 Webservices und wie kann ich sie laufen kriegen?Laufen sie nacheinander oder gibt es eine Möglichkeit sie alle
gleichzeitig auszuführen ?
  Mit Zitat antworten Zitat
Rolf Frei

Registriert seit: 19. Jun 2006
655 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Login Webservice Delphi

  Alt 15. Jul 2020, 13:15
Ich denke du hast die Funktionsweise von SOAP noch nicht verstanden. SOAP ist nichts anderes als speziell formatierte XML Anfragen an einen Webserver. Der Webserver muss darauf antworten, also in deinem Fall müsstest du eine CGI-Exe oder eine ISAPI-DLL machen, die mehere SOAP Services unterstützen kann.

Allfällige Fehelremeldungen etc. darfst du nicht wie in einem GUI Programm retour melden (ShowMessage ist Tabu in einer Webanwendung). Es drügfen also keine GUI-Meldungen erscheinen. Ausserdem solltest du die Forms + Dialogs unit aus deinem Projekt verbannen. Daraus darfst du in einer Webapplikation nichts nutzen.

Für deinen Fall müsstest du eine SOAP-Anfrage für das Login machen in der du z.B. den Fehler als Ausgabeparameter zurücklieferst oder einfach eine Exception mit deinem Fehlertext auslöst. Dieser sollte dann automatisch an den Client als Exception geliefert werden.

Leider ist mir immer noch nicht ganz klar wie du den Server erstellst hast? Hast du da eine normale Delphi Anwendung gemacht (mit Formen) oder eine SOAP-Server Applicaiton (Delphi - New - Other... - Delphi/Web - SOAP-Server Applicaiton). Da hast du dann die 3 Möglichkeiten des Typs zu wählen (ISAPI, CGI, Eigenständige Webappserver). Mein Tipp ist hier CGI oder ISAPI, wenn dein Server über IIS verfügt, ansonsten eine eingenständige Exe. Den IIS musst du gegebenfalls noch etwas umkonfigurieren, damit du CGI/ISAPI nutzen kannst.

Geändert von Rolf Frei (15. Jul 2020 um 13:18 Uhr)
  Mit Zitat antworten Zitat
RomeoAnfänger

Registriert seit: 29. Mai 2020
23 Beiträge
 
#4

AW: Login Webservice Delphi

  Alt 16. Jul 2020, 12:20
Ich denke du hast die Funktionsweise von SOAP noch nicht verstanden. SOAP ist nichts anderes als speziell formatierte XML Anfragen an einen Webserver. Der Webserver muss darauf antworten, also in deinem Fall müsstest du eine CGI-Exe oder eine ISAPI-DLL machen, die mehere SOAP Services unterstützen kann.

Allfällige Fehelremeldungen etc. darfst du nicht wie in einem GUI Programm retour melden (ShowMessage ist Tabu in einer Webanwendung). Es drügfen also keine GUI-Meldungen erscheinen. Ausserdem solltest du die Forms + Dialogs unit aus deinem Projekt verbannen. Daraus darfst du in einer Webapplikation nichts nutzen.

Für deinen Fall müsstest du eine SOAP-Anfrage für das Login machen in der du z.B. den Fehler als Ausgabeparameter zurücklieferst oder einfach eine Exception mit deinem Fehlertext auslöst. Dieser sollte dann automatisch an den Client als Exception geliefert werden.

Leider ist mir immer noch nicht ganz klar wie du den Server erstellst hast? Hast du da eine normale Delphi Anwendung gemacht (mit Formen) oder eine SOAP-Server Applicaiton (Delphi - New - Other... - Delphi/Web - SOAP-Server Applicaiton). Da hast du dann die 3 Möglichkeiten des Typs zu wählen (ISAPI, CGI, Eigenständige Webappserver). Mein Tipp ist hier CGI oder ISAPI, wenn dein Server über IIS verfügt, ansonsten eine eingenständige Exe. Den IIS musst du gegebenfalls noch etwas umkonfigurieren, damit du CGI/ISAPI nutzen kannst.
Ich habe ein SOAP-Server Application für die Erstellung des Servers verwendet.Und ich möchte ISAPI dann verwenden.IIS ist auch schon umkonfiguriert .
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz