CORS support

Fix #530
This commit is contained in:
Julien Duponchelle committed 2016-05-17 12:39:23 +02:00
1 parent b44c2ea713
commit 342bcdb5b6
3 files changed
+8 -2

No files matched your search

-1
View File
@@ -37,7 +37,6 @@ class Response(aiohttp.web.Response):
self._route = route
self._output_schema = output_schema
self._request = request
headers['Access-Control-Allow-Origin'] = '*'
headers['X-Route'] = self._route
headers['Server'] = "Python/{0[0]}.{0[1]} GNS3/{1}".format(sys.version_info, __version__)
super().__init__(headers=headers, **kwargs)
+7 -1
View File
@@ -24,6 +24,7 @@ import sys
import signal
import asyncio
import aiohttp
import aiohttp_cors
import functools
import types
import time
@@ -207,9 +208,14 @@ class WebServer:
log.debug("ENV %s=%s", key, val)
app = aiohttp.web.Application()
# Allow CORS for this domains
cors = aiohttp_cors.setup(app, defaults={
# Default web server for web gui dev
"http://localhost:8080": aiohttp_cors.ResourceOptions(expose_headers="*", allow_headers="*")
})
for method, route, handler in Route.get_routes():
log.debug("Adding route: {} {}".format(method, route))
app.router.add_route(method, route, handler)
cors.add(app.router.add_route(method, route, handler))
for module in MODULES:
log.debug("Loading module {}".format(module.__name__))
m = module.instance()