Java 没有浏览器的Http POST/GET?

Java 没有浏览器的Http POST/GET?,java,http,Java,Http,我在我们的服务器上设置了一些东西,这样每当您访问该页面时,如果GET请求设置正确,它就会向数据库添加一个条目,标记谁和何时访问。我正在设计一个系统来显示我们的设备是否在通信,我想对它进行设置,使它每小时都能自动进行通信 因此,如果我在web浏览器中输入类似“”的内容,它将向数据库中添加一个条目 我一直在寻找一种不用浏览器就能做到这一点的方法。如果我把它作为一个网页打开,它会工作得很好。如果我尝试这样做: URL url = new URL("http://example.com/StampTim

我在我们的服务器上设置了一些东西,这样每当您访问该页面时,如果GET请求设置正确,它就会向数据库添加一个条目,标记谁和何时访问。我正在设计一个系统来显示我们的设备是否在通信,我想对它进行设置,使它每小时都能自动进行通信

因此,如果我在web浏览器中输入类似“”的内容,它将向数据库中添加一个条目

我一直在寻找一种不用浏览器就能做到这一点的方法。如果我把它作为一个网页打开,它会工作得很好。如果我尝试这样做:

URL url = new URL("http://example.com/StampTime/Default.aspx?playerId=3191121");
    HttpURLConnection con = (HttpURLConnection) url.openConnection();
    con.setRequestMethod("GET");
    con.connect();
数据库没有添加任何内容


这里有我遗漏的东西吗?

虽然您可以通过vanilla Java API做到这一点,但实际上没有必要重新发明轮子。取而代之的是,使用久经考验的方法。它将为您管理连接池、超时设置和其他细节。示例代码可以直接在提供的链接上获得,因此在这里复制它没有意义。如果使用Spring,则应该考虑使用。


无论如何,您似乎在GET请求中插入了一些东西,这是一个糟糕的想法。获取的目的是获取内容,而不是创建或更新。包括浏览器在内的所有客户端都希望GET是幂等的。而且,似乎您没有任何安全性,任何人都可以将内容插入数据库。这两个主题都超出了本文的范围,但请注意。

使用curl或wget可能比编写java程序更容易。请尝试从连接打开输出流,并使用监控服务刷新itOr,该服务将为您ping URL,跟踪各种统计信息等。如果您打算使用java,查看本教程: