如何防止离子应用程序中的HTML注入

问题描述

我开发了一个演示应用程序,用户可以通过提供以下输入(ion-input type =“ text”)来创建帖子。

在测试某些用户时,将键入一些HTML脚本以及您可以在附件图像上看到的结果。

所以我的问题是如何防止离子中的此类输入?

enter image description here

解决方法

如果您像这样在“ p”标签中显示输入内容怎么办

<p>{{userPost.longDescription}}</p>
,

您好,我发现只需更改消息(输入值)即可解决该问题。

这不是一个合适的解决方案,但就我而言,这是很不错的选择。

禁用HTML或任何类型的脚本的解决方案。

-只需将一些基本的特殊符号替换为编写脚本时使用的空白。

 Example: < > ( ) ' " / \ *; = { } ` (back tick) % + ^! -
 const str = `Click <a href='www.google.com'> here</a> to reset your password`;
console.log(str.replace(/[\\#+$~`":;!=*<>{}]/g,""));

在我的情况下,用户没有使用一些符号来描述问题(消息)。