0

我有一个rails4应用程序,我在数据库中存储url。当rails退出时,当我再次尝试调用它时,链接将不再可用。

所以我使用:

<%=@product.url.html_safe%>

但XSS不易受攻击吗?我也阅读了raw(),但它似乎与html_safe做了相同的事情?

2个答案2

重置为默认值
1

您可能会使用URI组件确保URL被转义:

<%=URI.parse@product.url%>

然而,这最好放在验证中:

Rails:验证链接(URL)的好方法是什么?

1

如果我是你,我会在url上添加验证以确保它是有效的url:

类别产品<AR::基本验证:valid_url私有的定义valid_url如果url.blank则返回?|!url已更改URI解析url救援URI::InvalidURIErrorerrors.add:url,:无效结束结束

有了这一点,您可以确定没有XSS的可能性。

你的答案

单击“发布您的答案”,表示您同意我们的服务条款并确认您已阅读我们的隐私政策.

不是你想要的答案吗?浏览标记的其他问题问你自己的问题.