首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >javalin中的限制选项方法

javalin中的限制选项方法
EN

Stack Overflow用户
提问于 2022-01-25 09:02:05
回答 1查看 74关注 0票数 2

我们有一个kotlin代码,如下所示,我试图禁用API的options方法,如下所示:使用Javalin(3.12.0),但是它也会阻塞所有其他方法,如get和post。我在这里错过了什么?

代码语言:javascript
复制
val app = Javalin.create {
        it.defaultContentType = "application/json"
        it.enableWebjars()
        it.addStaticFiles("", Location.CLASSPATH)
        it.enableCorsForAllOrigins()
        it.dynamicGzip = true
    }

app.options("/*") {ctx -> ctx.status(405)}

app.routes {        
        path("/auth") {
             post("/login") {
                Auth.doLogin(it)
            }
             get("/metrics") {
                val results = getData()
                it.json(results)
            }     
         }

还有两个问题。1.想要使用下面的代码为get APi实现20次请求一个小时的比率分隔

代码语言:javascript
复制
   app.get("/") { ctx ->
     RateLimit(ctx).requestPerTimeUnit(5, TimeUnit.MINUTES) // throws if rate limit is exceeded
     ctx.status("Hello, rate-limited World!")
   }

如何实现这一目标?

  1. 如何限制jetty服务器版本在进行API调用时显示?
EN

回答 1

Stack Overflow用户

发布于 2022-02-07 16:37:45

为了Jetty..。

Jetty中只有一个速率限制概念,那就是org.eclipse.jetty.server.AcceptRateLimit,它作为Jetty添加到ServerConnector中,它不能为特定的请求端点调整速率,只能对整个连接器进行调整。

如果您想要特定的端点速率,那么org.eclipse.jetty.servlets.QoSFilter就是使用Jetty的方式。

用于org.eclipse.jetty.server.HttpConfigurationorg.eclipse.jetty.server.ServerConnector包含启用/禁用服务器公告的控件。

看见

  • HttpConfiguration.setSendServerVersion(boolean)
  • HttpConfiguration.setSendXPoweredBy(boolean)
  • HttpConfiguration.setSendDateHeader(boolean)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70845919

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档