最新回答
  • 2019-12-5
    1 #

    此标记由静态测试使用.任何潜在的不安全输出都必须用 @escapeNotVerified标记   或者 @noEscape   通过测试,后者意味着已经检查了这个特定用法并且是安全的.

    将来会发布所有 @escapeNotVerified   将被验证并标记为 @noEscape   或使用以下方法之一逃脱:

      \Magento\Framework\View\Element\AbstractBlock::escapeHtml \Magento\Framework\View\Element\AbstractBlock::escapeUrl \Magento\Framework\View\Element\AbstractBlock::escapeXssInUrl \Magento\Framework\View\Element\AbstractBlock::escapeQuote

      另请注意,某些输出被认为是安全的,不应使用此类注释标记:

        Enclosed in single quotes

        Enclosed in double quotes but without variables

        Type casting to bool, int

        Method calls which contain 'html' in their names, like getTitleHtml ,也有望输出转义HTML

  • 2019-12-5
    2 #

    我在Magento2的devdocs中找到它

    Static Test

    为了提高XSS注射的安全性,静态测试 XssPhtmlTemplateTest.php   被添加到dev \ tests \ static \ testsuite \ Magento \ Test \ Php。

    此静态测试在PHTML模板中查找所有回显调用,并确定它是否已正确转义。

    它涵盖以下情况:

      /* @noEscape */   在输出之前.输出不需要转义.测试为绿色。

      /* @escapeNotVerified */   在输出之前.未检查输出转义,应进行验证.测试为绿色。

      Read the Magento Docs   在 2.0 要么 2.1

  • magento2:删除块在自定义xml布局中不起作用?
  • php:Magento Un合并JS和CSS文件