summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/server.py10
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)