Dies ist alles interne Server und Software, so dass ich sehr auf meine Optionen beschränkt bin, aber das ist, wo ich bin. Dies ist bereits ein Hilfsmittel für einen Workaround, aber ich habe keine andere Wahl, also versuche ich nur, es zum Laufen zu bringen.Probleme beim Lesen der Header-Werte in klassischen ASP
Ich habe eine einfache ASP-Datei auf meinem Server, die durch einen Dienst geschützt ist, der die Benutzerauthentifizierung behandelt (ich habe keine Kontrolle über diesen Dienst). Wenn ein Benutzer diese ASP-Datei besucht, müssen sie sich über den Dienst authentifizieren, und der Dienst leitet sie dann an die ASP-Datei weiter.
Der Dienst fügt benutzerdefinierte Werte in den http-Header ein, mit denen ich identifizieren kann, wer sich angemeldet hat (ich brauche es weiter unten). Wenn ich die asp verwenden, um die Werte ALL_RAW und ALL_HTTP aus der Kopfzeile anzuzeigen, kann ich alle benutzerdefinierten Werte anzeigen. Aber wenn ich versuche, diese Werte spezifisch zu nennen, bekomme ich nichts.
lief ich diese einfache Schleife:
<%
for each x in Request.ServerVariables
response.write("<B>" & x & ":</b> " & Request.ServerVariables(x) & "<p />")
next
%>
und alle Tasten Anzeige der benutzerdefinierten diejenigen darunter. Aber keiner der benutzerdefinierten Werte wird. Die Werte sind der Teil, den ich brauche.
das einzige, was ich an den benutzerdefinierten Werten einzigartig finde, ist, dass sie im ALL_RAW-Wert etwas anders aussehen, aber sie sehen alle in der ALL_HTTP korrekt aus. Soweit ich das beurteilen kann, sind sie korrekt formatiert. Die einzigen Formatierungsunterschiede zwischen den Standard- und benutzerdefinierten Werten sind Groß- und Kleinschreibung und Unterstriche anstelle von Bindestrichen.
Warum kann ich diese benutzerdefinierten Werte nicht lesen?
Es kann sein, dass der fragliche Dienst die Codierung falsch einrichtet oder ein Null-Byte oder ein anderes unsichtbares Zeichen einfügt, das die Analyse verschleiert.Oder es kann sein, dass der Dienst zu spät in die Header gelangt. –