Created
December 7, 2017 15:54
-
-
Save yuikns/2d752fe0fd6ce18017a0896a40aea628 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class IPFilter()(override implicit val mat: Materializer) extends Filter { | |
def apply(f: (RequestHeader) => Future[Result])(request: RequestHeader): Future[Result] = { | |
if (request.remoteAddress == "127.0.0.1") { | |
Logger.info(s"from: ${request.remoteAddress}, pass") | |
f(request).map(identity) | |
} else { | |
Logger.info(s"from: ${request.remoteAddress}, rejected") | |
Future.successful(Default.BadRequest.withHeaders( | |
"Access-Control-Allow-Origin" -> "NOT YOU" | |
)) | |
} | |
} | |
} | |
object IPFilter { | |
def apply()(implicit mat: Materializer) = new IPFilter() | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment