用户上传 html ,然后需要预览 如果用 xss 这个库过滤一下的话 hrml 里面的 js 和 css 都没了 有什么方法可以完整展示 html 然后避免 xss 攻击的危险? 现在想的是单独用一个 nodejs 服务渲染,这样有风险吗
![]() | 1 cozof 2022-03-14 18:29:01 +08:00 via iPhone 只要预览?写一个程序 调用无头浏览器打开 html 并截图。 |
![]() | 2 shakukansp OP @cozof 要网页打开…… |
![]() | 3 shakukansp OP 是这样,用户在网页上传一个 html 文件,用户不想下载了以后再打开文件,就要在网页上能预览 |
![]() | 4 eason1874 2022-03-14 18:48:48 +08:00 ![]() 最简单有效的方法就是用一个专用域名去打开预览页面,比如你的域名是 v2ex.com ,用户内容放到 example.com |
![]() | 5 cozof 2022-03-14 18:50:59 +08:00 via iPhone 允许 js 、css 的情况下想防 xss 几乎是不可能的。 |
![]() | 6 TomVista 2022-03-14 18:55:53 +08:00 iframe 啊.... |
7 vivipure 2022-03-14 18:57:50 +08:00 如果只是个人用户上传,且只有上传者可以看到该页面的话。不做处理也可以,主要看业务需求吧 |
![]() | 8 mctgyt 2022-03-14 19:02:23 +08:00 几乎不可能 |
![]() | 10 ysc3839 2022-03-14 20:44:31 +08:00 via Android iframe sandbox 也许可行 |
11 dcsuibian 2022-03-14 20:54:15 +08:00 iframe 啊,基本就是当沙盒用 |
12 dddd1919 2022-03-15 09:05:22 +08:00 想预览 html ,直接双击在浏览器打开不就好了么,在线预览 html 。。。。。。。 |