5 Stimmen

Gibt es einen guten Grund, warum AntiXss.JavaScriptEncode das Ergebnis in einfache Anführungszeichen setzt?

Ich habe mit Microsofts AntiXss-Bibliothek und frage mich, ob es einen guten Grund gibt, warum seine JavaScriptEncode Methode das Ergebnis in einfache Anführungszeichen setzt? Dieses Verhalten scheint unkonventionell zu sein.

5voto

Erlend Punkte 4305

In der neuen Version 3.0beta gibt es ein Flag JavaScriptEncode(string input, bool flagforQuote). Setzt man es auf false, erhält man ein Ergebnis ohne Anführungszeichen.

http://www.microsoft.com/downloads/details.aspx?familyid=051EE83C-5CCF-48ED-8463-02F56A6BFC09&displaylang=en

1voto

D. Patrick Punkte 2675

Wahrscheinlich, um sicherzustellen, dass es eine Zeichenkette zurückgibt. Die Verwendung, die ich gesehen habe, ist die Eingabe zu nehmen und einen Wert zurückgeben, die Sie zu einer Variablen in Javascript zuweisen können.

var message=<%=AntiXss.JavaScriptEncode(message)%>;

Nun, egal, was in der Nachricht, die js-Variable Nachricht wird die genaue Eingabe entsprechend escaped haben, so dass, wenn einige Idioten versucht, Javascript in dieser Nachricht injizieren sie würde nur sehen, das Ergebnis ihrer Nachricht zugewiesen werden, um die Nachricht Variable.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X