gpt4 book ai didi

php - 在我的网站中使用模板功能来检索 PHP Smarty 生成的 HTML 并使用 ajax 响应显示是一个好主意吗?

转载 作者:行者123 更新时间:2023-12-01 06:02:51 25 4
gpt4 key购买 nike

我的PHP框架

public static function insertAction(){

.......

\MVCApplication::getSmarty()->display('common/inserted.tpl');

}

使用 Ajax 响应向用户显示:(JQuery)

success: function(response){
$("body").html(response);
}

我想创建一个所有操作都不会刷新页面的网站(即,我想要一个只有一页index.php的动态网站)。

我的问题是关于安全的!我在网上读过一些关于脚本注入(inject)问题的文章,我担心任何恶意的人都会拦截来自服务器的响应并向我的服务器响应添加错误的代码!如何提高框架安全性?

(最终我需要在我的 .tpl smarty 模板中执行脚本,这也将输出到 ajax 响应...)

最佳答案

取决于您所讨论的安全性,网络服务器还是客户端。
从代码中列出的内容来看,服务器仅将数据发送到 AJAX 客户端,因此它不易受到脚本注入(inject)攻击,因为它不会对接收到的脚本进行操作。 (虽然它可能正在解析 GET/POST 响应,但这是一个不同的主题)

事实上,您使用 smarty 并不会影响安全性,它只是一个模板工具。

客户端上的 JavaScript 本质上是不安全的。如果您担心脚本注入(inject)返回到客户端,请不要使用 javascript。作为替代方案,您可以尝试剥离任何返回的 AJAX 数据以删除 HTML 或嵌入脚本。

使用类似: var StrippedString = OriginalString.replace(/(<([^>]+)>)/ig,"");来自:http://css-tricks.com/snippets/javascript/strip-html-tags-in-javascript/

关于php - 在我的网站中使用模板功能来检索 PHP Smarty 生成的 HTML 并使用 ajax 响应显示是一个好主意吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9488524/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com