jsoup - 清理 HTML

  • 简述

    以下示例将展示 XSS 攻击或跨站点脚本攻击的预防。
  • 句法

    
    String safeHtml =  Jsoup.clean(html, Whitelist.basic());  
    
    在哪里
    • Jsoup - 解析给定 HTML 字符串的主类。
    • html - 初始 HTML 字符串。
    • safeHtml - 清理 HTML。
    • Whitelist − 对象提供默认配置以保护 html。
    • clean() - 使用白名单清理 html。
  • 描述

    Jsoup 对象使用白名单配置清理 html。
  • 例子

    使用您在 C:/> jsoup 中选择的任何编辑器创建以下 Java 程序。
    JsoupTester.java
    
    import org.jsoup.Jsoup;
    import org.jsoup.safety.Whitelist;
    public class JsoupTester {
       public static void main(String[] args) {
          String html = "<p><a href='http://example.com/'"
             +" onclick='checkData()'>Link</a></p>";
          System.out.println("Initial HTML: " + html);
          String safeHtml =  Jsoup.clean(html, Whitelist.basic());
          System.out.println("Cleaned HTML: " +safeHtml);
       }
    }
    
  • 验证结果

    使用编译类 javac 编译器如下:
    
    C:\jsoup>javac JsoupTester.java
    
    现在运行 JsoupTester 以查看结果。
    
    C:\jsoup>java JsoupTester
    
    看看结果。
    
    Initial HTML: <p><a href='http://example.com/' onclick='checkData()'>Link</a></p>
    Cleaned HTML: <p><a href="http://example.com/" rel="nofollow">Link</a></p>