没有前端的REST / JSON Web服务的Python框架是什么?

时间:2011-10-30 04:58:29

标签: python json web-services rest tastypie

我需要为iOS应用程序创建一个Python REST / JSON Web服务来进行交互。网络上没有前端。

用于此目的的最快,最轻量级的框架是什么?还要考虑实施学习曲线吗?

从研究中我已经完成了Django-Tastypie或Djanjo-Piston看起来最好的选择,Tastypie获胜因为代码库正在积极维护?

6 个答案:

答案 0 :(得分:25)

在Pycon Australia,Richard Jones比较了最受欢迎的轻量级网页框架。 Bottle名列前茅。这是full presentation

答案 1 :(得分:13)

总的来说,我认为你会发现web2py是最容易设置,学习和使用的框架之一。 web2py使generate JSON变得非常容易(只需添加.json扩展名),它现在包含自动创建RESTful web services以访问数据库模型的新功能。请务必查看parse_as_restsmart_query功能。

如果您需要任何帮助,请询问mailing list

答案 2 :(得分:6)

谈到轻量级,CherryPy非常适合。

import cherrypy

class HelloWorld(object):
    def index(self):
        return "Hello World!"
    index.exposed = True

cherrypy.quickstart(HelloWorld())

答案 3 :(得分:2)

如果我是你,我会使用web.py这对轻量级REST应用程序进行快速原型设计非常方便。 从主页查看此代码段:

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()

答案 4 :(得分:1)

查看flask及其附加信息flask-restful

from flask import Flask
from flask.ext import restful

app = Flask(__name__)
api = restful.Api(app)

class HelloWorld(restful.Resource):
    def get(self):
        return {'hello': 'world'}

api.add_resource(HelloWorld, '/')

if __name__ == '__main__':
    app.run(debug=True)

答案 5 :(得分:0)

您可能还想查看Parse。它们现在可以免费使用,并为您的移动应用提供一个不错的REST API

但是,正如@iksnar所指出的那样,你不会在Python中写任何东西,或者根本没有任何东西用于后端。如果您需要在自己的服务器上运行Python后端,如果您已经使用Django和Django ORM,我就是TastyPie的忠实粉丝。