mirror of
https://github.com/librecaptcha/lc-core.git
synced 2025-04-16 08:58:01 -04:00
Minor fixes
Signed-off-by: Rahul Rudragoudar <rr83019@gmail.com>
This commit is contained in:
parent
a63cf3976d
commit
d65d050038
@ -182,22 +182,24 @@ class RateLimiter extends DBConn {
|
|||||||
val allowance = rate
|
val allowance = rate
|
||||||
|
|
||||||
def validateUser(user: Int) : Boolean = {
|
def validateUser(user: Int) : Boolean = {
|
||||||
val allow = if(userLastActive.contains(user)){
|
synchronized {
|
||||||
true
|
val allow = if(userLastActive.contains(user)){
|
||||||
} else {
|
|
||||||
validatePstmt.setInt(1, user)
|
|
||||||
val rs = validatePstmt.executeQuery()
|
|
||||||
val validated = if(rs.next()){
|
|
||||||
val hash = rs.getInt("hash")
|
|
||||||
userLastActive(hash) = System.currentTimeMillis()
|
|
||||||
userAllowance(hash) = allowance
|
|
||||||
true
|
true
|
||||||
} else {
|
} else {
|
||||||
false
|
validatePstmt.setInt(1, user)
|
||||||
|
val rs = validatePstmt.executeQuery()
|
||||||
|
val validated = if(rs.next()){
|
||||||
|
val hash = rs.getInt("hash")
|
||||||
|
userLastActive(hash) = System.currentTimeMillis()
|
||||||
|
userAllowance(hash) = allowance
|
||||||
|
true
|
||||||
|
} else {
|
||||||
|
false
|
||||||
|
}
|
||||||
|
validated
|
||||||
}
|
}
|
||||||
validated
|
allow
|
||||||
}
|
}
|
||||||
allow
|
|
||||||
}
|
}
|
||||||
|
|
||||||
def checkLimit(user: Int): Boolean = {
|
def checkLimit(user: Int): Boolean = {
|
||||||
@ -228,10 +230,9 @@ class Server(port: Int){
|
|||||||
implicit val formats = DefaultFormats
|
implicit val formats = DefaultFormats
|
||||||
|
|
||||||
host.addContext("/v1/captcha",(req, resp) => {
|
host.addContext("/v1/captcha",(req, resp) => {
|
||||||
val accessToken = if(req.getHeaders().get("access-token") != null){
|
val accessToken = Option(req.getHeaders().get("access-token")).map(_.toInt)
|
||||||
req.getHeaders().get("access-token").toInt
|
val access = accessToken.map(t => rateLimiter.validateUser(t) && rateLimiter.checkLimit(t)).getOrElse(false)
|
||||||
} else 0
|
val id = if(access){
|
||||||
val id = if(true == rateLimiter.validateUser(accessToken) && true == rateLimiter.checkLimit(accessToken)){
|
|
||||||
val body = req.getJson()
|
val body = req.getJson()
|
||||||
val json = parse(body)
|
val json = parse(body)
|
||||||
val param = json.extract[Parameters]
|
val param = json.extract[Parameters]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user