Exemple #1
0
def share():
    web.router(r'/(.*)', handler = web.FileHandler,
            kwargs = {
                'root'      :       get_share_path(),
                })
            
    web.app_run(port = 8000, processes = 1)
Exemple #2
0
class BaseHandler(RequestHandler):
    def get_current_user(self):
        return self.session.get('username')

@router(url = '/login', is_login = True, base_handler = BaseHandler)
def login(self):
    self.render('login.html')

@router(url = '/login', method = 'POST', base_handler = BaseHandler)
def login_post(self):
    username = self.get_argument('username', '')
    if username:
        self.session['username'] = username
        self.session.save()
    callback_url = self.get_query_argument('callback', '/')
    self.redirect(callback_url)

@router(url = '/logout', method='GET', base_handler = BaseHandler)
def logout(self):
    self.session.pop('username', None)
    self.session.save()
    self.redirect('/')

@router(url = '/', base_handler = BaseHandler, should_login = True)
def index(self):
    self.push('hi ' + self.current_user)


app_run(__file__)

Exemple #3
0
#coding:utf8
from gale.web import  router, app_run
from gale.server import HTTPServer
from gale.ipc import IPCDict
import os

@router(url='/')
def index(self):
    ipc_dict = IPCDict('counter')
    access_counter = ipc_dict.incr('access_counter')
    self.push("pid: %s counter:%s" % (os.getpid(), access_counter))

app_run(processes = 4)

Exemple #4
0
#!/usr/bin/env python
#coding:utf-8
# Author        : tuxpy
# Email         : [email protected]
# Last modified : 2015-06-09 15:20:13
# Filename      : test.py
# Description   : 
from gale.web import app_run, router, RequestHandler, limit_referrer, HTTPError
from gale.cache import MemCacheManager, cache,  page

class CacheHandler(RequestHandler):
    @cache()
    def add(self, a, b):
        print('a + b')
        return a + b

@router(url = '/', method = 'GET')
def index(self):
    raise HTTPError(500)

@router(url = '/test', method='GET', base_handler = CacheHandler)
def test(self):
    self.render('t.html', l = [1, 2, 3])

@router(url = '/test', method = 'POST')
def login_post(self):
    self.push('hello: ' + self.get_argument('firstname', '1') + " " +self.get_argument('lastname'))

app_run(__file__, settings = {'debug': False, 'gzip': True, 'cookie_secret': '123', 'cache_manager': MemCacheManager(expire = 1000)}, processes = 10,  port = 5000)

Exemple #5
0
#!/usr/bin/env python
#coding:utf-8
# Author        : tuxpy
# Email         : [email protected]
# Last modified : 2016-01-22 09:54:48
# Filename      : files.py
# Description   : 
from __future__ import print_function, unicode_literals

from gale import web


web.router('/dl(.*)', handler = web.FileHandler, 
        kwargs = {
            'root': '/data/', 
            'show_hidden': False,
            'hidden_list': [r'/.*?/gale/$'],
            'deny_hidden': True,
            'base_username': '******',
            'base_password': '******',
            })

web.app_run(processes = 1)

Exemple #6
0
@router(url = '/login', method = 'POST')
def login_post(self):
    """
    restapi: 用户登录
    request:
        username: 用户
        password: 密码
    """
    self.push(self.body.username)


def get_port():
    import sys
    if len(sys.argv) < 2:
        return 5000

    if sys.argv[1].isdigit():
        return int(sys.argv[1])

    return 5000

load_worker = LoadWorker(target_host = '127.0.0.1', password = '******')
app_run(settings = {'debug': True, 
        'gzip': False, 
        'cookie_secret': '123', 
        'cache_manager': MemCacheManager(expire = 1000)}, 
        processes = 1,  
        port = get_port(), 
            )

Exemple #7
0
#!/usr/bin/env python
#coding:utf-8
# Author        : tuxpy
# Email         : [email protected]
# Last modified : 2015-06-09 10:03:05
# Filename      : helloword.py
# Description   : 
from gale.web import router, app_run

"""
@router(url = r'/(\w+)?', host='localhost', method = 'GET')
def hello(self, name = None):
    self.push('hello ' + (name or 'XXX'))

app_run()

"""
# 下面这样也可以哦

from gale.web import Application, RequestHandler
from gale.server import HTTPServer

class HelloHandler(RequestHandler):
    def GET(self, name = None):
        self.push('hello ' + (name or 'XXX'))

app = Application(handlers = [(r'/(\w+)?', HelloHandler), ])
http_server = HTTPServer(app)
http_server.listen(8080)
http_server.run()
Exemple #8
0
    return logger

def parse_value(v):
    if re_float.match(v):
        return float(v)
    elif re_int.match(v):
        return int(v)
    elif re_tuple.match(v):
        return ast.literal_eval(v)
    elif v == 'None':
        return None

    return v

@router(r'/log', method = 'POST')
def log(self):
    log_dict = {}
    for _k, _v in self.request.all_arguments.items():
        if len(_v) == 1:
            log_dict[_k] = parse_value(_v[0])
        else:
            for __v in _v:
                log_dict.setdefault(_k, []).append(parse_value(__v))

    log_record = logging.makeLogRecord(log_dict)
    logger = get_logger()
    logger.handle(log_record)

app_run(port = 8009)