39 lines
936 B
Python
Executable file
39 lines
936 B
Python
Executable file
#!/usr/bin/env python3
|
|
|
|
import os
|
|
import bottle
|
|
import urllib.parse
|
|
import requests
|
|
|
|
@bottle.get('/spaceapi/<schema>/<host>')
|
|
@bottle.get('/spaceapi/<schema>/<host>/')
|
|
@bottle.get('/spaceapi/<schema>/<host>/<path:path>')
|
|
def spaceapi_proxy(schema, host, path=''):
|
|
url = urllib.parse.urlunsplit((schema, host, path, '', ''))
|
|
import logging
|
|
logging.error(url)
|
|
r = requests.get(url)
|
|
return r.json()
|
|
|
|
@bottle.get('/static/<path:path>')
|
|
def static(path):
|
|
return bottle.static_file(path, root='out/static')
|
|
|
|
@bottle.get('/<lang>')
|
|
def langred(lang):
|
|
bottle.redirect(f'/{lang}/')
|
|
|
|
@bottle.get('/<lang>/')
|
|
def lang(lang):
|
|
return bottle.static_file('index.html', root=os.path.join('out', lang))
|
|
|
|
@bottle.get('/<lang>/<path:path>')
|
|
def langpath(lang, path):
|
|
return bottle.static_file(path, root=os.path.join('out', lang))
|
|
|
|
@bottle.get('/')
|
|
def index():
|
|
bottle.redirect('/de/')
|
|
|
|
bottle.debug()
|
|
bottle.run()
|