【问题标题】:Using django-rest-interface使用 django-rest-interface
【发布时间】:2010-09-17 19:06:47
【问题描述】:

我有一个 django 应用程序,我想添加一些休息接口。我见过http://code.google.com/p/django-rest-interface/,但它似乎很简单。例如,它似乎没有强制执行安全性的方法。我将如何限制人们可以通过其余界面查看和操作的内容?通常我会把这种逻辑放在我的观点中。这是正确的地方还是我应该将更多的逻辑向下移动到模型中?或者那里有更好的图书馆还是我需要自己推出?

【问题讨论】:

    标签: python django rest


    【解决方案1】:

    请看一下 django-rest-framework,我刚从 sweetpie 跨步到这个新框架,效果很好!

    http://django-rest-framework.org/

    尤其是基于类的视图和可浏览的 api!以及许多其他优势(例如上传图片)

    【讨论】:

      【解决方案2】:

      如果您主要关心安全性,我会考虑使用 django-piston http://bitbucket.org/jespern/django-piston/wiki/Home 应用程序。

      我过去使用过 django-rest-interface,它可靠且虽然简单但功能强大,但 django-piston 似乎更灵活。

      【讨论】:

        【解决方案3】:

        即使使用 Authentication 参数,您也无法精细控制人们可以做什么。 Django-REST 接口的当前实现不跟踪用户信息,因此您没有这些信息可用于进行细粒度的授权检查。

        Issue #32

        但是,扩展它以添加一些功能相对容易。我使用了很多子类来添加功能。

        然而,在 Django 中使用登录信息更新请求是很棘手的。我没有这样做,而是将信息留在集合中。

        现在,我估计在补丁和子类之间,我编写的内容与滚动我自己的 RESTful 视图函数一样大。

        然而,Django-REST 优雅而整洁地处理 HTTP Digest 身份验证。我不期待为我的 Django 视图函数用某种装饰器替换它们。

        [也许我们应该打开一个源代码伪造项目并找出一个干净的替代品?]

        【讨论】:

        • google code 似乎是可重用 django 应用程序的首选托管(我不知道为什么)
        • @S.Lott:你建议了一个 sourceforge 项目;我相信@Jim Robert 建议改用 Google Code,因为它似乎是一般 Django 应用程序的主要托管解决方案,而不是评论安全控制本身的级别。
        • @Hank Gay:谢谢。谷歌代码可能是首选,因为谷歌对 Python 做出了很大的承诺。
        • Guess in 09 google code 很火。现在它看起来一直是它的 Github 或 bitbucket。所以经常看到这个 repostirory 已经转移到 Github。
        【解决方案4】:

        嗯,从外观上看,Collection 有一个 authentication 参数。 (见这个例子:authentication.py

        其次,(即使 Django 还没有)应该有一个中间件来进行 CSRF/XSRF 表单检查。 (哦,好像有be one。)你应该也可以在urls.py中使用login_required and permission_required decorators

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2018-09-27
          • 2015-03-25
          • 2020-05-15
          • 1970-01-01
          • 2019-10-28
          • 2018-06-16
          • 2019-02-01
          • 1970-01-01
          相关资源
          最近更新 更多