Подтвердить что ты не робот

Какая структура Python для веб-службы REST/JSON без интерфейса?

Мне нужно создать веб-службу REST/JSON Python для приложения iOS для взаимодействия. В Интернете не будет интерфейса.

Какая будет самая быстрая, самая легкая структура, которая будет использоваться для этого? Кривая обучения для реализации также рассмотрена?

Из исследования, которое я сделал, Django-Tastypie или Djanjo-Piston выглядят как лучшие варианты с победой Tastypie, потому что кодовая база активно поддерживается?

4b9b3361

Ответ 1

В общем, я думаю, вы найдете web2py, чтобы быть одной из самых простых фреймворков для настройки, изучения и использования. web2py упрощает генерировать JSON (просто добавьте расширение .json), и теперь он включает новые функции для автоматического создания веб-службы RESTful для доступа к моделям баз данных. В частности, проверьте parse_as_rest и smart_query.

Если вам нужна помощь, спросите в список рассылки.

Ответ 2

В Pycon Australia Ричард Джонс сравнивал самые популярные легкие веб-фреймворки. Bottle вышел на первое место. Ниже представлена ​​полная презентация .

Ответ 3

Когда дело доходит до легкого веса, CherryPy довольно там.

import cherrypy

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

cherrypy.quickstart(HelloWorld())

Ответ 4

Если бы я был вами, я бы использовал 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()

Ответ 5

Взгляните на 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)

Ответ 6

Вы также можете проверить Parse. Они могут свободно использовать прямо сейчас и предоставят вам приятный REST API для мобильных приложений.

Однако, как указывает @iksnar, вы ничего не пишете на Python или вообще ничего для бэкэнд. Если вам нужно, чтобы бэкэнд работал на Python на ваших собственных серверах, я большой поклонник TastyPie, если вы уже используете Django и Django ORM.