AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke TWebModule DefaultHandler wird 2 x ausgeführt?

TWebModule DefaultHandler wird 2 x ausgeführt?

Ein Thema von gmc616 · begonnen am 18. Feb 2022 · letzter Beitrag vom 19. Feb 2022
Antwort Antwort
gmc616

Registriert seit: 25. Jun 2004
Ort: Jena
627 Beiträge
 
Delphi 10.3 Rio
 
#1

TWebModule DefaultHandler wird 2 x ausgeführt?

  Alt 18. Feb 2022, 18:46
Hallo Delphi-Praxis,

aus gegebenen Anlass bin ich dazu verdonnert worden, auf die schnelle einen REST-Server aus dem Boden zu stampfen. Dabei habe ich keine Ahnung davon.
Also habe ich mir ein paar Tutorials reingezogen und das eine und andere Video angeschaut und etwas zusammen gefrickelt.
Der Server als StandAlone.Exe läuft ansich. Soll später eine ISAPI-Modul werden.

Jetzt stelle ich aber fest, dass der DefaultHandler des TWebModules immer 2 mal ausgeführt wird. Ist das normal?
Das Handled:=TRUE zusetzen hilft nicht.

Da ich den URL der REST-API auf "Variablen" prüfen muss, dachte ich mir: Springste gleich in den DefaultHandler und nimmst dort den Request.PathInfo auseinander.
Die URLs sollen später in etwa diese Form haben
Code:
http://myServer.tld/project/{projectId}/{groupId}.{format}
Von daher sehe ich keinen Sinn, das über die TWebActionItems zu regeln.

Oder gibt es bessere Methoden, den URL zu "parsen"?

Danke.
  Mit Zitat antworten Zitat
Rolf Frei

Registriert seit: 19. Jun 2006
628 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: TWebModule DefaultHandler wird 2 x ausgeführt?

  Alt 18. Feb 2022, 20:26
Nein das ist nicht normal, aber ohne Beispielcode ist das schwer zu sagen was du falsch machts. Aber schau dir mal lieber folgende Opensource REST Frameworks an:

- Delphi MVC Framework
Hier ein Blog dazu und weitere Links:
https://blogs.embarcadero.com/powerf...mvc-framework/

- MARS-Curiosity
https://blog.andreamagni.eu/2016/03/...-rest-library/

Diese zu nutzen ist viel einfacher als das Rad neu zu erfinden.
  Mit Zitat antworten Zitat
gmc616

Registriert seit: 25. Jun 2004
Ort: Jena
627 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: TWebModule DefaultHandler wird 2 x ausgeführt?

  Alt 19. Feb 2022, 03:23
Ja klar. Jetzt macht es Sinn! Der zweite Aufruf kommt vom Browser!
Der Browser fordert u.a. auch ein "favorite.ico" an. Daher der zweite Aufruf des DefaultHandlers.

Da, wie gesagt, ich keine Ahnung von diesen REST-Server-Zeug habe, habe ich meinen Bastel-Server mit einem Browser getestet. Hätte ich evtl. erwähnen sollen...
Der ganze JSON-Krahm dahinter, der über meinen Sever ausgeliefert werden soll, ist ja im Prinzip schon fertig, halt nur noch nicht eingebunden. Step by Step...
Jetzt, wo ich den Request.PathInfo analysiere und korrekte HTTP-Stati zurückgebe, fragt der Browser nicht mehr danach.

Falsches Test-Werkzeug!
Wieder was gelernt.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 07:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz