分享一道今天面试遇到的面试题,前端开发相关 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
Zhuzhuchenyan
V2EX    程序员

分享一道今天面试遇到的面试题,前端开发相关

  •  
  •   Zhuzhuchenyan 2 月 25 日 1793 次点击

    给定一个 host.html

    <!doctype html> <meta charset="utf-8" /> <title>host</title> <iframe id="outer" sandbox="allow-scripts" src="https://another-site/sandbox.html" ></iframe> 

    其中 sandbox.html

    <!doctype html> <meta charset="utf-8" /> <title>sandbox</title> <script> const inner = document.createElement('iframe'); inner.src = 'https://another-another-site/inner.html'; document.body.appendChild(inner); </script> 

    其中 inner.html

    <!doctype html> <meta charset="utf-8" /> <title>inner</title> <script> const v = localStorage.getItem('no_such_key'); console.log('value:', v); </script> 

    问:试分析localStorage.getItem('no_such_key')的行为


    我的回答:这大概率会抛出一个 SecurityError ,我的映像里因为 sandbox 的缘故 iframe 里面的网页浏览器是不会指定 origin 的。没有 origin 的话大概率 localstorage, session storage, index db 这一类都不可用

    Follow up

    1. iframe src 和 iframe origin 的关系
    2. sandbox 里哪个属性控制这个行为?
    3. 在 inner html 里类似 fetch(..., { credentials: "include" })请求在哪些情况会带上 cookie
    6 条回复    2026-02-26 11:17:12 +08:00
    susunus
        1
    susunus  
       2 月 26 日
    你面试的是安全相关还是简历有这方面的说明,总之我感觉这个问题有点傻逼,平时完全用不上的冷门知识点拿来考
    GreatAuk
        2
    GreatAuk  
       2 月 26 日
    好偏门啊,但现在有 ai 了,一问一个准...
    xiaowoli
        3
    xiaowoli  
       2 月 26 日   1
    考这么细的 API 有什么用呢?能让写代码的时候少看两分钟的文档吗?
    toyst
        4
    toyst  
       2 月 26 日
    现在有 AI 了,题都懒得看完,直接复制粘贴给 AI
    notproblem
        5
    notproblem  
       2 月 26 日
    实际测试了:
    1. sandbox.html 获取 body 会报错,因为 body 标签没有;
    2. 子 iframe 的 sandbox 属性没有设置,会等于父 iframe 的 sandbox 设置,也就是只有 allow-scripts ,没有 allow-same-origin 。所以会无法访问 localStorage,直接报错。如果子 iframe 设置了 sandbox ,会和父 iframe 的 sandbox 属性取交集,得到最小的允许的权限。
    HeyWeGo
        6
    HeyWeGo  
       2 月 26 日
    没接触过,我会问 AI ,并且手动验证下。反问业务上这种情况多吗?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1056 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 187ms UTC 18:36 PVG 02:36 LAX 10:36 JFK 13:36
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86