diff options
| -rw-r--r-- | lib/server.py | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/server.py b/lib/server.py index 9261730..1218531 100644 --- a/lib/server.py +++ b/lib/server.py @@ -2,7 +2,7 @@ from flask import Flask from flask import request, jsonify -import sys, os +import sys, os, re import cherrypy from paste.translogger import TransLogger @@ -39,11 +39,13 @@ class Server(object): return "HELLO WORLD!" @self.app.route('/im/api/<pb_classname>', methods=['POST']) def pb(pb_classname): - ip = '127.0.0.1' #fixme + host = request.headers.getlist("X-Forwarded-For")[0] + regex = re.compile(r'[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+') + forwarded_ip = regex.search(host).group() return self._response_post( - pb_classname, + pb_classname, request.form.to_dict(), - remote_addr=ip + remote_addr=forwarded_ip ) @self.app.errorhandler(InvalidUsage) |
