gpt4 book ai didi

java - 如何捕获并记录外部 URL 链接上的点击事件?

转载 作者:行者123 更新时间:2023-11-30 04:53:03 25 4
gpt4 key购买 nike

我有以下 HTML。我希望在单击链接时将 URL“http://www.google.com”插入到数据库表中。

<a href="http://www.google.com" onclick="insert.jsp">Google</a>

insert.jsp 包含连接代码,单击按钮即可正常工作,但上面的代码不起作用。

最佳答案

在所有这些链接上使用 rel="ext",它可以提供额外的 SEO 优势

<a href="http://www.google.com" rel="ext">
<a href="http://www.stackoverflow.com" rel="ext">
...

并使用这段 JavaScript 来记录它们(我只是简单地利用 jQuery 使其可靠地跨浏览器兼容,而无需再编写 100 行)

$('a[rel=ext]').click(function(e) {
var $link = $(this);
var url = '/log?url=' + encodeURIComponent($link.attr('href'));

if (e.ctrlKey || $link.attr('target') == '_blank') {
window.open(url);
} else {
window.location = url;
}

e.preventDefault();
});

终于有了servlet/log 的 URL 模式上完成这项工作

@WebServlet("/log")
public class LogServlet extends HttpServlet {

@EJB
private LogService logService;

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String url = request.getParameter("url");

if (url == null || url.trim().isEmpty()) {
response.sendError(HttpServletResponse.SC_BAD_REQUEST);
} else {
logService.log(url);
response.sendRedirect(url);
}
}

}

不要为此使用 JSP。这没有任何意义。

关于java - 如何捕获并记录外部 URL 链接上的点击事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9441591/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com