pushState和http_build_query在查询字符串中生成随机数


pushState and http_build_query generates random number in query string

当我在http_build_query中使用pushState时,它会在查询字符串中生成随机数。

例如:

example.com/? _ = 1356033912215 ,…

然而,如果我不使用http_build_query,这个参数不会显示。此外,每个数字以13560开头…

这个参数是什么意思?

我可能错了,但我相信这就是所谓的缓存破坏者。当您使用jQuery的$.ajaxcache: false集时,我在自己的代码中看到过这种情况。

jQuery在查询字符串的末尾生成一个时间戳,以强制页面重新加载并从服务器提取数据。这是一种欺骗浏览器重新加载最近在服务器端更新的内容,但可能已经在客户端缓存的方法。

看起来http_build_query正在执行类似的缓存破坏功能。

关于前几个数字,我冒昧地猜测时间戳最有可能以秒为单位生成,所以如果你明白我的意思,前面的数字通常不会翻转。一百万秒是很长的一段时间,所以你不会在很短的时间内看到前面的数字有什么不同。