1.你知道iframe是什么吗?它有什么缺点?
iframe也称作嵌入式框架,嵌入式框架和框架网页类似,它可以把一个网页的框架和内容嵌入在现有的网页中。
优点:
1.只需要修改内容,被嵌套的网页内容就可被一致修改,方便
2.可以用iframe嵌套加载缓慢的第三方内容如图标和广告
3.可以把嵌入的网页完整显示出来
缺点:
- iframe会阻塞主页面的onload事件;
- 很多的移动设备无法完全显示框架,设备兼容性差
- iframe框架页面会增加服务器的http请求,对于大型网站是不可取的。
2.什么是icmp协议,它的作用是什么?
Internet Control Message Protocol
ICMP协议是网络控制协议,用于传输差错报文以及传递信息。
请你简要描述一下Ajax中是如何解决浏览器缓存问题的
在Ajax发送请求前加上anyAjaxObj.setRequestHeader(“If-Modified-Since”, “0”)。
在Ajax发送请求前加上anyAjaxObj.setRequestHeader(“Cache-Control”, “no-***”)。
在URL后加上一个随机数:" fresh= " + Math.random();。
在URL后加上时间搓:" nowtime = " + new Date().getTime();。
设置cookie属性
请解释一下csrf 和 xss以及防范措施;
(1)xss(Cross Site Script):恶意攻击者往 Web 页面里插入恶意 Script 代码,当用户浏览该页之时,嵌入其中 Web 里面的 Script 代码会被执行,从而达到恶意攻击用户的目的。
防范措施:
1.HttpOnly 防止劫取 Cookie
2.用户的输入检查
3.服务端的输出检查
转义输入输出的内容
(2)csrf(Cross-site request forgery):CSRF 攻击是攻击者借助受害者的 Cookie 骗取服务器的信任,可以在受害者毫不知情的情况下以受害者名义伪造请求发送给受攻击服务器,从而在并未授权的情况下执行在权限保护之下的操作。
防范措施:
1.验证码
2.Referer Check
3.Token 验证(可以在 HTTP 请求中以参数的形式加入一个随机产生的 token,并在服务器端建立一个拦截器来验证这个 token,如果请求中没有 token 或者 token 内容不正确,则认为可能是 CSRF 攻击而拒绝该请求)