Ich habe eine Flasche App auf Heroku, und ich muss eingehende IP-Adressen filtern. Ich habe keine Ahnung, wie ich das machen soll.IP Filterung in der Flasche
This answer schlägt vor, einen Wrapper zu verwenden, aber dies ist für private Routen - eingehende Anfragen nicht filtern. Die Hülle ist:
def private_only(route):
def wrapper(*args, **kwargs):
if IPy.IP(bottle.request.remote_addr).iptype() == 'PRIVATE':
return route(*args, **kwargs)
else:
return "Not allowed!"
return wrapper
Würde Ändern der Wrapper:
def private_only(route):
def wrapper(*args, **kwargs):
if IPy.IP(bottle.request.remote_addr).iptype() in ALLOWED_IPS:
return route(*args, **kwargs)
else:
return "Not allowed!"
return wrapper
und Dekorieren Routen mit:
@route('/my/internal/route')
@private_only
def my_view():
return some_data()
Arbeit?