status

草稿|校对|正式

AuthorName

完成度15%

TableOfContents

Eurasia

~ 关注高性能的原创框架

作者

沈崴
  • 生平
  • 职业
  • 动机

概述

历史

Eurasia 项目沿革

Eurasia3

简介

        from Eurasia.web import config, mainloop, Response
        def controller(request):
            response = Response(request)
            response['Content-Type'] = 'text/plain'
            response.write('hello world!')
            response.close()

        config(controller=controller, port=8080)
        mainloop()

        表单词典       = Form(request)
        文件句柄       = SimpleUpload(request)
        请求头部       = request['Http-Header']
        请求报文       = request.read(size) / request.readline(size)

        from shelve2 import open, Persistent, BTree
        class User(Persistent):
            def __init__(self, username, password):
                self.username = username
                self.password = password

            def hello(self):
                print 'Hello Im %s, can I make friends with you?' %self.username

        db = open('test.fs', 'c')
        db['user'] = db.new(BTree)()
        db['user']['william'] = db.new(User)('william', '******')
        db.close()

        db = open('test.fs')
        db['user']['william'].hello()

        # -*- coding: utf-8 -*-
        html = '''\ # HTML 页面
        HTTP/1.1 200 OK
        Content-Type: text/html

        <html>
        <head>
            <title>Comet Example</title>
        </head>
        <body>
        <script language="JavaScript">

        function message(msg)
        {
            confirm(msg);
        };

        </script>
        <!-- 建立 Comet 长连接 -->
        <iframe src="comet" style="display: none;"></iframe>
        </body>
        </html>'''

        import Eurasia
        from Eurasia.web import config, mainloop, Comet

        sleep = Eurasia.modules['time'].sleep

        def controller(request):
            # 如果 URL 不是 Comet, 输出普通页面
            if request.path[-5:] != 'comet':
                request.write(html)
                request.close()
                return

            # Comet 长连接
            browser = Comet(request)
            browser.begin()
            browser.message('start')

            sleep(2)
            for i in xrange(1, 3):
                browser.message(i)
                sleep(2)

            browser.message('finish')
            browser.end()

        config(controller=controller,
            port = 8080, verbose=True)
        mainloop()

Eurasia3 VS Django

        from Eurasia.web import config, mainloop
        def echo(sockfile):
            while True:
                data = sockfile.readline(1024)
                if data == 'quit':
                    sockfile.close()
                    break
                else:
                    sockfile.write(data)

        config(tcphandler=echo, port=8080)
        mainloop()

开始使用 Eurasia3


反馈

创建 by -- ::-- ZoomQuiet [DateTime(2008-09-30T14:18:41Z)]

PageComment2

[:/PageCommentData:PageCommentData]