search

Home  >  Q&A  >  body text

javascript - js:网站前端如何将用户的访问记录传给后台的

比如用户通过百度得到搜索结果页面,当用户点击结果页面的一个链接时,应该是会触发某个方法,从而将点击链接这种行为传给后台。那么,通过js如何实现呢?还有,用户点击一个链接时,就会下载一个图片,如下图所示。这个下载的图片是不是和向后台传递数据有关呢?

PHPzPHPz2894 days ago526

reply all(3)I'll reply

  • PHPz

    PHPz2017-04-10 15:33:58

    这是网站的统计用的。

    为什么使用图片请求而不是Ajax呢,因为Ajax容易出现跨域的问题,而使用图片请求则没有任何的问题,能兼容到所有的浏览器。

    在每个引入百度统计代码中,网站都会请求一个js文件,在这个js文件中,他会获取到这个页面中很多的信息,然后拼接成一个诸如一个的一个链接:

    1

    2

    <code>http://log.hm.baidu.com/hm.gif?cc=1&ck=1&cl=24-bit&ds=1920x1080&et=0&fl=18.0&ja=1&ln=zh-CN&lo=0&lt=1436753539&nv=0&rnd=19930681&si=884477732c15fb2f2416fb892282394b&st=4&v=1.0.94&lv=3

    </code>

    我们可以看到,这个链接中有很多的字段,这里面就包含了统计的信息,然后统计服务器,再获取这些字段里的信息,达到统计数据的目的。

    reply
    0
  • 高洛峰

    高洛峰2017-04-10 15:33:58

    利用Ajax.post 或者jquery.post 都可以实现向后台传输,后台返回图片地址,前台加载图片,大概就是这么个步骤

    reply
    0
  • 天蓬老师

    天蓬老师2017-04-10 15:33:58

    一般都是使用js来获取一些数据,然后通过用户的触发,把一些数据发送到后台专门的服务器来收集,有时候用到cookie来存吧

    reply
    0
  • Cancelreply