summaryrefslogtreecommitdiffstats
path: root/result_collection_api/opnfv_testapi/tornado_swagger
diff options
context:
space:
mode:
authorSerenaFeng <feng.xiaowei@zte.com.cn>2016-06-09 02:10:01 +0800
committerSerenaFeng <feng.xiaowei@zte.com.cn>2016-06-09 02:17:39 +0800
commite3c312c23b45f50b583f42dadfa15f60a7544359 (patch)
treec70dc2d88a83955ddce71e7ce8c37aa7c2f5422b /result_collection_api/opnfv_testapi/tornado_swagger
parent629bdee7b5acc4eb078395f6c933bfd6391a3d4c (diff)
solve access testresults.opnfv.org/swagger/spec.html fail issue in testAPI
add swagger configuration in config.ini add swagger.docs() process in server.py add swagger configuration parse in config.py add basePath() in settings.py change 'basePath' item assignment in views.py JIRA: FUNCTEST-305 Change-Id: I049991d4d53b78755ee971021ec0ad2458f5da60 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
Diffstat (limited to 'result_collection_api/opnfv_testapi/tornado_swagger')
-rw-r--r--result_collection_api/opnfv_testapi/tornado_swagger/settings.py6
-rw-r--r--result_collection_api/opnfv_testapi/tornado_swagger/views.py18
2 files changed, 11 insertions, 13 deletions
diff --git a/result_collection_api/opnfv_testapi/tornado_swagger/settings.py b/result_collection_api/opnfv_testapi/tornado_swagger/settings.py
index 001d558..88d0d0f 100644
--- a/result_collection_api/opnfv_testapi/tornado_swagger/settings.py
+++ b/result_collection_api/opnfv_testapi/tornado_swagger/settings.py
@@ -16,7 +16,7 @@ STATIC_PATH = os.path.join(os.path.dirname(os.path.normpath(__file__)),
'static')
default_settings = {
- 'base_url': '/',
+ 'base_url': '',
'static_path': STATIC_PATH,
'swagger_prefix': '/swagger',
'api_version': 'v1.0',
@@ -26,3 +26,7 @@ default_settings = {
}
models = []
+
+
+def basePath():
+ return default_settings.get('base_url')
diff --git a/result_collection_api/opnfv_testapi/tornado_swagger/views.py b/result_collection_api/opnfv_testapi/tornado_swagger/views.py
index 7190c67..2508319 100644
--- a/result_collection_api/opnfv_testapi/tornado_swagger/views.py
+++ b/result_collection_api/opnfv_testapi/tornado_swagger/views.py
@@ -6,15 +6,14 @@
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
-import urlparse
-import json
import inspect
+import json
-import tornado.web
import tornado.template
+import tornado.web
from settings import SWAGGER_VERSION, SWAGGER_API_LIST, SWAGGER_API_SPEC
-from settings import models
+from settings import models, basePath
def json_dumps(obj, pretty=False):
@@ -30,9 +29,7 @@ class SwaggerUIHandler(tornado.web.RequestHandler):
return self.static_path
def get(self):
- discovery_url = \
- urlparse.urljoin(self.request.full_url(),
- self.reverse_url(SWAGGER_API_LIST))
+ discovery_url = basePath() + self.reverse_url(SWAGGER_API_LIST)
self.render('index.html', discovery_url=discovery_url)
@@ -43,11 +40,10 @@ class SwaggerResourcesHandler(tornado.web.RequestHandler):
def get(self):
self.set_header('content-type', 'application/json')
- u = urlparse.urlparse(self.request.full_url())
resources = {
'apiVersion': self.api_version,
'swaggerVersion': SWAGGER_VERSION,
- 'basePath': '%s://%s' % (u.scheme, u.netloc),
+ 'basePath': basePath(),
'produces': ["application/json"],
'description': 'Test Api Spec',
'apis': [{
@@ -70,12 +66,10 @@ class SwaggerApiHandler(tornado.web.RequestHandler):
if apis is None:
raise tornado.web.HTTPError(404)
- base_path = urlparse.urljoin(self.request.full_url(),
- self.base_url)[:-1]
specs = {
'apiVersion': self.api_version,
'swaggerVersion': SWAGGER_VERSION,
- 'basePath': base_path,
+ 'basePath': basePath(),
'apis': [self.__get_api_spec__(path, spec, operations)
for path, spec, operations in apis],
'models': self.__get_models_spec(models)