如何使用django创建oauth(REST)API(如twitter或foursquare)?

时间:2012-03-22 23:07:44

标签: django api rest oauth-2.0

我想以Twitter或Foursquare的方式创建一个oauth(REST)API。

我发现这个网站http://djangopackages.com/非常好,有几个套餐,但我想对哪个是最好的套餐等意见......

我希望,例如,让人们允许第三方应用访问他们的数据(使用API​​密钥等...)

非常感谢!

4 个答案:

答案 0 :(得分:4)

Django是一个很棒的Web框架。它在许多方面帮助您制作丰富的Web应用程序。它可以帮助您从表单处理开始并以模板结束。

然而,在你的情况下,如果你的意图只是制作一个很棒的API,如Twitter或Foursquare,你必须问自己是否需要Django提供的所有这些帮助。例如,您是否打算在API中使用任何模板或处理提交。答案可能不是......

因此,如果您需要一个非常灵活的框架来开发API,我强烈建议您查看Pyramid。它与Django非常相似,但没有所有这些额外的cludder,这对API来说是不必要的。

但是,如果您的应用程序需要丰富的用户界面和API,或者您只想使用Django,就像Ulusses建议的那样,那么我认为TastyPie适合您。这是一个很棒的库,您可以立即拥有一个正在运行的API。我一直使用它,它非常灵活。 ReadTheDocs使用tastypie。

另一个API库是piston。我没有用它,所以不能判断它是好还是坏,然后是tastypie。然而Bitbucket使用它。

答案 1 :(得分:1)

您可以查看https://github.com/toastdriven/django-tastypiehttps://bitbucket.org/jespern/django-piston/wiki/Home

你可以用两者达到你想要的效果,请查看最适合你的文档。

答案 2 :(得分:0)

我使用Django REST框架。太棒了。

答案 3 :(得分:-1)

活塞死了。 Tastypie很棒,但只适用于Django。 Django和Pyramid都有利弊。如果你需要很棒的ORM,sqlalchemy只有一个,并且没有很好的例子可以将它与Django一起使用,所以在这种情况下你有Flask,Bottle或Pyramid。 Django ORM真的不是那么平等。 如果你选择金字塔,你将不得不写很多东西,而框架只是剥了皮的无骨猫。你需要组装和配置每个块,对包括我在内的许多人来说似乎很沮丧。