sábado, abril 20, 2024

Permitir el ingreso de Script en nuestros formularios web

En algún momento tendremos que permitirle a nuestros usuarios poder enviarnos código html, javascript u otro tipo de código desde nuestros formularios, pero si hacemos esto sin deshabilitar la validación, nos daría un error como este

Entonces que podemos hacer?

Tenemos dos opciones:
– La primera, es quitarle la validación («Request Validation») solo a esta página

<%@ Page languaje=»VB» validateRequest=»false» %>

– Y la segunda, no muy recomendada, es quitarle la validación («Request Validation») para toda nuestra aplicación.

Precaución: Cuando la validación es deshabilitada, el contenido que nos envien puede ser perjudicial para nuestra página web; es responsabilidad del desarrollador de la página asegurarse de que el contenido será codificado o procesado correctamente.

En el Web.Config debemos indicarle que no queremos la validación por parte de .Net

<configuration>
<system.web>
<pages validateRequest=»false» />
</system.web>
</configuration>

Ahora si ya le deshabilitamos la validación sería muy recomendable aplicarle el siguiente código a nuestro formulario web, para encriptar los datos a HTML-encode.

<script runat=»server»>
Public Sub Button_click(sender as Object, e As EventArgs)
Dim mCodigo as String
mCodigo = Server.HtmlEncode(TextBox1.Text)
End Sub
</script>

Ahí tendríamos el contenido del TextBox1 encriptado y que así no nos cause daño alguno.

Roy Rojas
Roy Rojashttp://www.dotnetcr.com
Con más de 20 años de experiencia en programación, experto en lenguajes .NET, VB, C#, ASP.NET, Xamarin, XCode, DBA en SQL Server. Creador de dotnetcr.com, sitio web para programadores en español. royrojas.com | dotnetcr.com | GitHub
Roy Rojas
Roy Rojashttp://www.dotnetcr.com
Con más de 20 años de experiencia en programación, experto en lenguajes .NET, VB, C#, ASP.NET, Xamarin, XCode, DBA en SQL Server. Creador de dotnetcr.com, sitio web para programadores en español. royrojas.com | dotnetcr.com | GitHub