创建简单的python Web服务的最佳方法

Jer*_*ell 136 python web-services

我已经使用python多年了,但我对python web编程几乎没有经验.我想创建一个非常简单的Web服务,它从现有的python脚本中公开一些功能,以便在我公司内部使用.它可能会在csv中返回结果.什么是最快捷的方式?如果它影响了您的建议,我可能会在此之前添加更多功能.

Pet*_*ann 55

看看werkzeug.Werkzeug最初是作为WSGI应用程序的各种实用程序的简单集合开始的,并且已经成为最先进的WSGI实用程序模块之一.它包括一个功能强大的调试器,全功能请求和响应对象,处理实体标签的HTTP实用程序,缓存控制头,HTTP日期,cookie处理,文件上传,强大的URL路由系统和一堆社区贡献的插件模块.

它包含许多很酷的工具来使用http,并且具有可以在不同环境中使用wsgi(cgi,fcgi,apache/mod_wsgi或使用普通的简单python服务器进行调试)的优点.

  • 我最终使用了werkzeug.我喜欢它的灵活性.谢谢你的推荐. (2认同)

Tim*_*her 26

web.py可能是最简单的Web框架."裸"CGI更简单,但在制作实际做某事的服务时,你完全靠自己.

"你好,世界!" 根据web.py是不是比裸CGI版本更长的时间,但它增加了URL映射,HTTP命令的区别,和查询参数解析为免费:

import web

urls = (
    '/(.*)', 'hello'
)
app = web.application(urls, globals())

class hello:        
    def GET(self, name):
        if not name: 
            name = 'world'
        return 'Hello, ' + name + '!'

if __name__ == "__main__":
    app.run()
Run Code Online (Sandbox Code Playgroud)


Gre*_*ill 15

在线获取Python脚本的最简单方法是使用CGI:

#!/usr/bin/python

print "Content-type: text/html"
print

print "<p>Hello world.</p>"
Run Code Online (Sandbox Code Playgroud)

将该代码放在您的Web服务器CGI目录中的脚本中,使其可执行,然后运行它.cgi当您需要接受用户的参数时,该模块有许多有用的实用程序.

  • 关键是在没有任何额外的网络服务器(如 apache)的情况下运行应用程序。 (2认同)

Cha*_*tin 12

原始的CGI是一种痛苦,Django是一种重量级的.有许多更简单,更轻的框架,例如CherryPy.值得一看.

  • CherryPy为+1.当你想要比Django更简单的东西时,它是完美的. (2认同)

S.L*_*ott 9

查看WSGI参考实现.您已经在Python库中拥有它了.这很简单.