Sehr kurze Snippet: wie die Ajax-Aufrufe in PHP zu identifizieren

Beim Aufbau eines Gateway-Ajax, das heißt, eine Datei, die von dem Objekt aufgerufen wird XmlHTTPRequest JavaScript können Sie versehentlich einen Tunnel für Intrusionen nicht gefällt. Angesichts der Tatsache, eine Datei wie die anderen, auf unserem Server platziert, ist es auch von der Adresszeile des Browsers. Glücklicherweise gibt es eine einfache Möglichkeit, die Art der Anfrage zu identifizieren:

1
2
3
4
5
@ isset ( $_SERVER [ 'HTTP_X_REQUESTED_WITH' ] ) ) { if (@ isset ($ _SERVER ['HTTP_X_REQUESTED_WITH'])) {
/ / Durch die HTTPRequest (Ajax) Genannt
{ Else {}
/ / Nichts tun oder zeigt eine Warnmeldung
}

Auf diese Weise verhindern wir, dass Anrufe aus der Adresszeile des Browsers. Die Chicciola (@, at) ist nicht unbedingt notwendig, aber wenn die Header bereits auf die Seite gesendet wurde, erhalten Sie möglicherweise einen unangenehmen Warnung.

4 Kommentare zu: ""

  1. 8. April 2010 Michele:

    Für mich ist dieses Skript nicht funktionieren ... die Ajax-Aufrufe bleiben als "abgestanden" ...

  2. 8. April 2010 Giovan Battista Fazioli :

    @ Michele: wahrscheinlich hängt von Ihrem Server-Einstellungen, insbesondere von PHP. ] viene impostata automaticamente dall'ambiente server quando riceve una richiesta dall'oggetto XmlHTTPRequest . Die Variable $_SERVER [ 'HTTP_X_REQUESTED_WITH' ] wird automatisch vom Server gesetzt, wenn er eine Anfrage von dem Objekt erhält XmlHTTPRequest . Versuchen Sie, Ihre Einstellungen zu testen, weil es für mich funktioniert ... :)

  3. 8. April 2010 Michele:

    @ Giovan Battista Fazioli: Entschuldigen Sie meine Unwissenheit, aber ich weiß nicht, wie man diese Einstellung zu überprüfen : (

  4. 8. April 2010 Giovan Battista Fazioli :

    @ Michael: wenn Sie nicht fragen Sie Ihren Server-Administrator, überprüft auch das Skript, die Sie verwendet, vielleicht das Problem ist in den Code, nicht der Server. ] o, se possiedi FireFox con FireBug, alla verifica dei dati inviati e ricevuti sulla rete. Versuchen Sie es mit einer einfachen Überprüfung der $_SERVER [ 'HTTP_X_REQUESTED_WITH' ] oder, wenn Sie Firefox mit Firebug, die Überprüfung der übermittelten Daten und über das Netzwerk empfangen haben.

Hinterlasse einen Kommentar

TAG XHTML PERMITS: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> Code-Eingabe:
 <pre></pre> // blocco generico <code></code> // blocco generico [cc_actionscript][/cc_actionscript] // Actionscript [cc_actionscript3][/cc_actionscript3] // Actionscript 3 [cc_css][/cc_css] // CSS Style Sheet [cc_html][/cc_html] // HTML [cc_js][/cc_js] // Javascript [cc_objc][/cc_objc] // Objective-C [cc_php][/cc_objc] // PHP [cc_sql][/cc_sql] // SQL