页面里的img或background-image设置不当会导致当前页面加载多次。
1、img
问题:在某些情况下我们需要往img标签动态填充src,如多图片通过第三方插件预览等。如果将src的默认值设置为#等指向当前页面的标志,那么恭喜你了Page_Load会执行多次。
<img id="viewerImg" src="#" alt="大图" style="display: none;" />
规避:通过将src设置为空或具体的图片地址,如src=""
抓包(Page_Load执行两次):
第二次的Referer与第一次请求的URL相同
<%-- 第一次 --%> GET http://localhost:2999/rimg/uni?V9MzDoXpblW9vvysNQIGOi8KJYfCPWh7WeHyUljmqnDveydUBPBs4tSkhVu+W65qbymf3NYP6Hgy2myvJiOd6w== HTTP/1.1 Referer: http://localhost:2999/rimg/uni?V9MzDoXpblW9vvysNQIGOi8KJYfCPWh7WeHyUljmqnDCFvvWIS1Bg+0UxR197ldKVTQs2kWrUHn8us/bPu/jzQ== <%-- 第二次 --%> GET http://localhost:2999/rimg/uni?V9MzDoXpblW9vvysNQIGOi8KJYfCPWh7WeHyUljmqnDveydUBPBs4tSkhVu+W65qbymf3NYP6Hgy2myvJiOd6w== HTTP/1.1 Referer: http://localhost:2999/rimg/uni?V9MzDoXpblW9vvysNQIGOi8KJYfCPWh7WeHyUljmqnDveydUBPBs4tSkhVu+W65qbymf3NYP6Hgy2myvJiOd6w==
2、background-image
问题:背景图更坑如果将背景图设置为“”也会导致再次加载
style="background-image: url('');"
规避:将背景图片的url设置到具体的图片