【问题标题】:how do i know whether my html link is clicked or not from Servlet?我如何知道我的 html 链接是否从 Servlet 被点击?
【发布时间】:2012-03-21 05:49:31
【问题描述】:

我的 Servlet 响应类型是 html,并且我的响应包含指向另一个网站的超链接。所以,现在我想捕获有关用户是否单击该链接的信息?并计算总点击次数?我正在使用 Tomcat 7 作为服务器。

这可以设置响应头(302还是404)吗?...

请指导我摆脱这个问题?

【问题讨论】:

  • 我会为此推荐 Google Analytics...
  • 让该链接在您的服务器上执行get 请求,然后发出浏览器重定向
  • 如果您的回复中的链接没有返回到您网站上的页面,那么您无法确定它是否被点击。例如,您可以返回一个链接,将用户发送到您的一个 servlet 以及一些关于将它们重定向到哪里的数据(就像 prajeesh 所说)。

标签: java jsp jakarta-ee servlets


【解决方案1】:

是的,您可以使用 302:您无需提供指向其他网站的链接,而是提供指向您自己的 servlet 的链接,进行记帐,然后向其他网站发回重定向 (301/302) http 状态- 响应中的站点 URL Location 标头。

这可能有点简单,因为用户会离开你的原始页面(这是你想要的吗?)如果你的网络应用是公开的,搜索引擎可能不喜欢这样。

【讨论】:

    【解决方案2】:

    我认为您现在正在客户端重定向请求(另一个网站的链接)。在这种方法中,您的服务器无法获取有关点击的信息。

    您可以创建一个 servlet 并在单击时调用此 servlet 现在此 servlet 负责将请求重定向到另一个网站。添加一个静态整数计数器,并在每次 servlet 调用时递增。

    【讨论】:

      【解决方案3】:

      使用方法setStatus():-

      setStatus(HttpServletResponse.SC_FOUND);
      

      setStatus(HttpServletResponse.SC_NOT_FOUND);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-12-30
        • 1970-01-01
        • 1970-01-01
        • 2012-06-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多