Frage

Ich bin Aufrechterhaltung Cocoon 2.1 Anwendung und ich konfrontiert ernstes Problem mit Anforderungsparameter.

Betrachten Sie folgende URL:

http://myapp.com/somePage.html?param1=<expected_integer_value>&param2=<expected_integer_value>

Sowohl param1 param2 und werden direkt in Transformator als Parameter (<map:parameter />) geleitet und dann in JavaScript-Code unter Verwendung von Attributwert-Template direkt verwendet:

`<select ... onchange="someFunction(this, '{$param1}','{$param2}');" >`

Das Problem ist, dass es möglich ist, einige JavaScript-Code in Parameter zu injizieren und sie sind standardmäßig nicht entgangen (dennoch alle Artikel über Kokon und Xslt sagt, dass die Ausgabe ist standardmäßig entkam).

Vielleicht hat jemand mehr Erfahrung mit Kokon und xsl kann etwas über dieses Problem wissen? Wie kann ich Ausgang in Kokon entkommen? Ich werde es begrüßen jede Hilfe und Beratung.

Vielen Dank im Voraus

Simon

War es hilfreich?

Lösung

ich es geschafft, eine Lösung für dieses Problem zu finden. In Sitemap-Datei, jeder Parameter, die direkt von URL zu xslt-Datei übergeben werden muss hat url-encode Funktion zu entkommen verwenden. Beispiel

<map:parameter name="param1" value="{url-encode:{request-param:theNameOfTheParam}}" />'

Viele Grüße Simon

Andere Tipps

da Kokon decodiert das Kinderwägen Ich schlage vor, Sie ein einfache machen übersetzen Problem mit nicht geschützten Parametern zu vermeiden:

<select ... onchange="someFunction(this, '{translate($param1,"'", "")}','{translate($param1,"'", "")}');" >

finden Sie unter http://www.zvon.org/xxl/XSLTreference/ Output / function_translate.html

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top