@@ -29,11 +29,9 @@ public SafeDomainParser() {
2929 try {
3030 // 读取resources目录下的文件
3131 ClassPathResource resource = new ClassPathResource (safeDomainClassPath );
32- File file = resource .getFile ();
33-
3432 DocumentBuilderFactory dbf = DocumentBuilderFactory .newInstance ();
3533 DocumentBuilder db = dbf .newDocumentBuilder ();
36- Document doc = db .parse (file ); // parse xml
34+ Document doc = db .parse (resource . getInputStream () ); // parse xml
3735
3836 NodeList rootNode = doc .getElementsByTagName (rootTag ); // 解析根节点domains
3937 Node domainsNode = rootNode .item (0 );
@@ -68,6 +66,7 @@ public SafeDomainParser() {
6866
6967 WebConfig wc = new WebConfig ();
7068 wc .setSafeDomains (safeDomains );
69+ logger .info (safeDomains .toString ());
7170 wc .setBlockDomains (blockDomains );
7271
7372 // 解析SSRF配置
@@ -86,11 +85,10 @@ public SafeDomainParser() {
8685 try {
8786 // 读取resources目录下的文件
8887 ClassPathResource resource = new ClassPathResource (ssrfSafeDomainClassPath );
89- File file = resource .getFile ();
90-
9188 DocumentBuilderFactory dbf = DocumentBuilderFactory .newInstance ();
9289 DocumentBuilder db = dbf .newDocumentBuilder ();
93- Document doc = db .parse (file ); // parse xml
90+ // 修复打包成jar包运行,不能读取文件的bug
91+ Document doc = db .parse (resource .getInputStream ()); // parse xml
9492
9593 NodeList rootNode = doc .getElementsByTagName (ssrfRootTag ); // 解析根节点
9694 Node domainsNode = rootNode .item (0 );
@@ -130,6 +128,7 @@ public SafeDomainParser() {
130128 logger .error (e .toString ());
131129 }
132130
131+ logger .info (ssrfBlockIps .toString ());
133132 wc .setSsrfBlockDomains (ssrfBlockDomains );
134133 wc .setSsrfBlockIps (ssrfBlockIps );
135134 wc .setSsrfSafeDomains (ssrfSafeDomains );
0 commit comments