使用jQuery进行Ajax调用,不需要返回结果

4

我想收集网页上发生的一些点击事件的统计数据。

我考虑为我想要跟踪的链接添加一个onmouse事件,并触发一个ajax调用到我的跟踪php脚本。

知道我不需要任何回报,即使失败了,事情也应该正常进行,那么最有效的方法是什么?

我知道在您不期望得到任何数据时会有一些特殊的HTTP调用。它究竟是什么?jQuery是否支持?我的php脚本呢?它应该返回一个特殊的HTTP头吗?

欢迎提供任何使此过程更有效的建议。

谢谢

Nathan

1个回答

5
您可以发送一个 204 no content 状态码。Google 在其主页上似乎也是这样做的,以便让客户端更快地查找 DNS 条目。请参见关于 Google 如何使用此状态码的 SO 问题:Google.com and clients1.google.com/generate_204。而且状态码定义听起来很正确:

10.2.5 204 No Content

服务器已经满足了请求,但不需要返回实体正文,并可能希望返回更新的元信息。响应可以包含新的或更新的元信息,以实体头的形式呈现,如果存在,则应与请求的变量相关联。

如果客户端是用户代理,则不应从导致请求被发送的文档视图更改其文档视图。该响应主要旨在允许输入操作发生,而不会导致用户代理的活动文档视图发生更改,尽管任何新的或更新的元信息都应用于当前在用户代理的活动视图中的文档。

204 响应必须不包括消息正文,因此总是在标头字段后的第一行空行终止。


好东西。那么jQuery Ajax调用本身呢?GET是最好的吗?还是我们可以做一个HEAD或类似的东西?或者值得这样做吗? - Nathan H
好问题。我不确定100%,但GET应该足够了(我从未在Ajax中看到过HEAD调用)。使用204,响应正文将为空。 - Pekka

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接