草庐IT

java - 如何让客户端等待 Java JAX-RS 服务以防止 DOS

我在使用Web服务时遇到问题,用户试图通过循环随机ID来猜测应用程序ID。错误请求来自随机IP,所以我不能只禁止他们的IP(除非我动态地这样做,但我还没有调查)。目前,当我检测到一个客户端尝试了10次错误的应用ID尝试时,我会将它们放在我的应用中的阻止列表中,并在当天拒绝来自该IP的进一步请求。我想尽量减少我的服务器需要做的工作量,因为坏客户端即使被拒绝也会继续发送1000多个请求。我知道有动态防火墙解决方案,但现在想要在我的应用程序中轻松实现。目前我正在sleep5秒钟以减少调用,但我想做的只是不向客户端发送响应,所以它必须超时。有人知道如何在Java中,在JAX-RS中做到这一点吗

java - 如何让客户端等待 Java JAX-RS 服务以防止 DOS

我在使用Web服务时遇到问题,用户试图通过循环随机ID来猜测应用程序ID。错误请求来自随机IP,所以我不能只禁止他们的IP(除非我动态地这样做,但我还没有调查)。目前,当我检测到一个客户端尝试了10次错误的应用ID尝试时,我会将它们放在我的应用中的阻止列表中,并在当天拒绝来自该IP的进一步请求。我想尽量减少我的服务器需要做的工作量,因为坏客户端即使被拒绝也会继续发送1000多个请求。我知道有动态防火墙解决方案,但现在想要在我的应用程序中轻松实现。目前我正在sleep5秒钟以减少调用,但我想做的只是不向客户端发送响应,所以它必须超时。有人知道如何在Java中,在JAX-RS中做到这一点吗

Java RestFul Web 服务 : JAX-RS implementation with Jersey 2. 3.1 库

我正在尝试在JBossjboss-eap-6.1AS上运行一个简单的“HalloWorld”应用程序Jersey2.3.1REST服务。在web.xml我禁用了restEasy库。在部署期间,我收到错误:JBWEB000289:Servletcom.sun.jersey.samples.helloworld.resources.MyApplicationthrewload()exception:java.lang.NoSuchMethodError:javax.ws.rs.core.Application.getProperties()Ljava/util/Map;在POM中我放置了这

Java RestFul Web 服务 : JAX-RS implementation with Jersey 2. 3.1 库

我正在尝试在JBossjboss-eap-6.1AS上运行一个简单的“HalloWorld”应用程序Jersey2.3.1REST服务。在web.xml我禁用了restEasy库。在部署期间,我收到错误:JBWEB000289:Servletcom.sun.jersey.samples.helloworld.resources.MyApplicationthrewload()exception:java.lang.NoSuchMethodError:javax.ws.rs.core.Application.getProperties()Ljava/util/Map;在POM中我放置了这

java - Metro 与 Java 的 JAX-WS?

Java的JAX-WS和Metro有什么区别?它们是相同的吗?它们是两个不同的JAX-WS实现吗?根据我的研究,JAX-WS已经是JDK6的一部分。但是,JAX-WS没有附带JDK的标准bundle,因此我寻找了一个JavaEEjar。但是,Oracle似乎没有托管已编译的JavaEEjar,而是提供了Glassfish,它是一个JavaEE服务器。我能够在Glassfish上运行我的网络服务。Glassfish使用什么JAX-WS实现?由于它托管在Oracle上,我假设它正在使用Java的JAX-WS实现,这应该是JDK1.6的一部分?我的假设是否正确?此外,要运行基于JAX-WS的

java - Metro 与 Java 的 JAX-WS?

Java的JAX-WS和Metro有什么区别?它们是相同的吗?它们是两个不同的JAX-WS实现吗?根据我的研究,JAX-WS已经是JDK6的一部分。但是,JAX-WS没有附带JDK的标准bundle,因此我寻找了一个JavaEEjar。但是,Oracle似乎没有托管已编译的JavaEEjar,而是提供了Glassfish,它是一个JavaEE服务器。我能够在Glassfish上运行我的网络服务。Glassfish使用什么JAX-WS实现?由于它托管在Oracle上,我假设它正在使用Java的JAX-WS实现,这应该是JDK1.6的一部分?我的假设是否正确?此外,要运行基于JAX-WS的

java - 使用 JAX-RS 在一处记录请求和响应

我有一个带有很多方法的RESTEasyWeb服务器。我想实现logback来跟踪所有请求和响应,但我不想将log.info()添加到每个方法中。也许有办法在一个地方捕获请求和响应并记录下来。可能类似于RESTEasy上的HTTP请求流程链上的过滤器。@Path("/rest")@Produces("application/json")publicclassCounterRestService{//Don'twantuselogincontrolereverymethodtotrackrequestsandresponcesstaticfinalLoggerlog=LoggerFacto

java - 使用 JAX-RS 在一处记录请求和响应

我有一个带有很多方法的RESTEasyWeb服务器。我想实现logback来跟踪所有请求和响应,但我不想将log.info()添加到每个方法中。也许有办法在一个地方捕获请求和响应并记录下来。可能类似于RESTEasy上的HTTP请求流程链上的过滤器。@Path("/rest")@Produces("application/json")publicclassCounterRestService{//Don'twantuselogincontrolereverymethodtotrackrequestsandresponcesstaticfinalLoggerlog=LoggerFacto

java - 在 Jax Rs/Appfuse 应用程序中获取 HttpServletRequest?

我使用AppFuse创建了一个基本的应用程序外壳,并遵循AppFusetutorial使用Jax-RS创建一个简单的RESTful服务。这工作得很好。对http://localhost:8080/services/api/persons的调用将Person对象的集合作为具有正确数据的Json格式字符串返回。我现在想从Appfuse公开的RESTful服务中访问ServletRequest和ServletResponse对象(以使用需要这些对象的另一个库)。我认为这应该可以通过添加@Context注释来实现,例如关注此StackOverflowpost这个forumpost.但是如果我添

java - 在 Jax Rs/Appfuse 应用程序中获取 HttpServletRequest?

我使用AppFuse创建了一个基本的应用程序外壳,并遵循AppFusetutorial使用Jax-RS创建一个简单的RESTful服务。这工作得很好。对http://localhost:8080/services/api/persons的调用将Person对象的集合作为具有正确数据的Json格式字符串返回。我现在想从Appfuse公开的RESTful服务中访问ServletRequest和ServletResponse对象(以使用需要这些对象的另一个库)。我认为这应该可以通过添加@Context注释来实现,例如关注此StackOverflowpost这个forumpost.但是如果我添