Kaynağa Gözat

MOD:修复qcwebserver启动问题

cxyu 3 yıl önce
ebeveyn
işleme
1dfbb05bd0
1 değiştirilmiş dosya ile 16 ekleme ve 3 silme
  1. 16 3
      ServerWrapper.py

+ 16 - 3
ServerWrapper.py

@@ -10,6 +10,7 @@ from model.common.file_pid import PID
 from urls import urls
 from model.log import logger
 import requests
+import time
 import sys
 log = logger()
 
@@ -24,9 +25,10 @@ class HttpServerWrapper(tornado.web.Application):
     def __init__(self, port=80,debug=True):
         self.port = port
         handlers = urls
-        r = requests.get("http://jsonip.com").json()['ip']
 
-        auth = True if r == '47.111.161.141' and sys.argv[1] == '8008' else False
+        r=self.get_ip()
+
+        auth = True if (r == '47.111.161.141' or r == '118.31.53.105') and sys.argv[1] == '8008' else False
         settings = {
             "port" : sys.argv[1],
             "auth": auth,
@@ -40,9 +42,20 @@ class HttpServerWrapper(tornado.web.Application):
         }
         super(HttpServerWrapper, self).__init__(handlers, **settings)
 
+    def get_ip(self):
+        for i in range(30):
+            time.sleep(1)
+            try:
+                r = requests.get("http://jsonip.com").json()['ip']
+                print(r)
+                return r
+            except:
+                print('获取ip,出错')
+                pass
+        raise
 
-def main():
 
+def main():
     PID.write()
     tornado.options.parse_command_line()
     http_server = tornado.httpserver.HTTPServer(HttpServerWrapper())