CHttpServer

CHttpServer eine Basisklasse keinen.

Klasse CHttpServer, mit CHttpServerContext, bietet eine Möglichkeit zum Erweitern der Funktionalität von einem ISAPI-kompatible HTTP-Server. Die CHttpServer -Klasse umschließt die Internet Server API (ISAPI)-Funktionalität und kann verschiedene Arten von Client-Anfragen verarbeiten, einschließlich Erweiterung DLLs CHttpServer nicht verarbeitet Clientanforderungen von ausführbare Dateien (CGI = Common Gateway Interface). Diese Erweiterung sind DLLs Internetserveranwendungen bezeichnet; jedoch sind sie eher EXEs DLLs. Der Kürze halber verweisen wir auf eine Erweiterungs-DLL als eine ISA.

Weitere Informationen über den Unterschied zwischen CGI und ISA, finden Sie unter Internet Server API (ISAPI) Erweiterungen im Visual C++ Programmer's Guide.

Wenn ein ISAPI-HTTP-Server eine Anforderung von einem Clientbrowser empfängt, ein CHttpServer -Objekt erstellt und initialisiert, und ein CHttpServerContext Objekt wird erstellt. Für jedes Modul kann nur eine Instanz von CHttpServer vorhanden; Allerdings ist ein CHttpServerContext Objekt bei jedem Aufruf an den Server erstellt. Ein CHttpServer -Objekt verwendet mehrere CHttpServerContext Objekte in separaten Threads ausgeführt. Dieser Entwurf ermöglicht gleichzeitige, mehrere Aufrufe der CHttpServer -Objekts, indem verschiedene Client-Verbindungen. Das CHttpServer -Objekt kommuniziert mit dem Client oder Server selbst über das Objekt CHttpServerContext.

Wenn der Server die ISA geladen wird, ruft es die ISA auf den Einstiegspunkt GetExtensionVersion um die Versionsnummer der Spezifikation zu erhalten, die Grundlage für die Erweiterung ist. Für jede Clientanforderung wird die HttpExtensionProc -Memberfunktion aufgerufen. Die Standardeinstellung empfohlen () Umsetzung der HttpExtensionProc wird Client-Daten lesen und entscheiden, welche Maßnahmen ergriffen werden. Sie können diese Memberfunktion die Implementierung anpassen überschreiben.

Andere Memberfunktionen CHttpServer die Clientanforderung nicht verarbeiten, formatieren Sie die Antworten und entsprechen den client.

Wenn ein Clientbefehl von einem CHttpServer -Objekt empfangen wird, ordnen die Analyse-Karten seiner Klasse-Member-Funktion und die Parameter des Befehls. Nur eine Analysezuordnung wird pro CHttpServer -Objekt erstellt.

Allgemeine Informationen zur Verwendung von Analysezuordnungsmakros finden Sie unter Internet Server API (ISAPI) Parse Karten . BEGIN_PARSE_MAP und END_PARSE_MAP Informationen finden Sie unter Gewusst wie: Erstellen eine Analysezuordnung um Clientbefehle zu behandeln.

Finden Sie unter die folgenden Makro-Beschreibungen für Informationen wie die Clientbefehle Member-Funktionen und ihren Argumenten zugeordnet werden:

Weitere Informationen zur Verwendung von Parse Karten um Clientbefehle zu behandeln, finden Sie unter ISAPI-Erweiterungen: Parse ordnet im Visual C++ Programmer's Guide.

Informationen zum Debuggen von Internet-Erweiterungs-DLLs finden Sie unter technischer Hinweis 63.

# include lt;afxisapi.h>

Klasse&nmember |nbsp; Hierarchiediagramm

Proben&Nbsp; MFC-Beispiel COUNTER | MFC-Beispiel WWWQUOTE

Siehe auch&Nbsp;CHtmlStream

Index