这样做有什么好处?和加载页面后通过javascript发起一个ajax请求有什么区别吗?

发现有些web程序中会在页面中放置一个隐藏的img,然后把它的src设置为调用后台业务逻辑的url。

qq_笑_17
浏览 206回答 3
3回答

明月笑刀无情

需要注意的是,此类请求只能是GET,所以只适合统计等用途,不能用于触发发表评论、删除文件等操作。

守着一只汪

方便收集信息,以及塞信息,简单说,每个请求,都可以收集到cookie,也可以放cookie到客户浏览器中

慕虎7371278

主要应用于只需要向服务器发送数据(日志数据)的场合,且无需服务器有消息体回应。比如收集访问者的统计信息。一般做法是服务器用一个1x1的gif图片来作为响应,当然这有点浪费服务器资源。因此用header来响应比较合适,目前比较合适的做法是服务器发送"204 No Content",即“服务器成功处理了请求,但不需要返回任何实体内容”。另外该脚本的位置一般放在页面最后以免阻塞页面渲染,并且一般情况下也不需要append到DOM中。通过它的onerror和onload事件来检测发送状态。<script&nbsp;type="text/javascript"> &nbsp;var&nbsp;thisPage&nbsp;=&nbsp;location.href;&nbsp;var&nbsp;referringPage&nbsp;=&nbsp;(document.referrer)&nbsp;?&nbsp;document.referrer&nbsp;:&nbsp;"none";&nbsp;var&nbsp;beacon&nbsp;=&nbsp;new&nbsp;Image(); &nbsp;beacon.src&nbsp;=&nbsp;"http://www.example.com/logger/beacon.gif?page="&nbsp;+&nbsp;encodeURI(thisPage) &nbsp;+&nbsp;"&ref="&nbsp;+&nbsp;encodeURI(referringPage);</script>这样做和ajax请求的区别在于:1.只能是get请求,因此可发送的数据量有限。2.只关心数据是否发送到服务器,服务器不需要做出消息体响应。并且一般客户端也不需要做出响应。3.实现了跨域。
打开App,查看更多内容
随时随地看视频慕课网APP