Python - Facebook没有基于浏览器的重定向连接

时间:2011-12-02 14:16:28

标签: python facebook oauth soa

标题可能有点用词不当。

我在Web应用程序中设置了两个子域,一个用于www的应用程序前端。 (它使用松散的PHP路由器与骨干,需要和jquery结合使用)和数据的数据层设置。 (使用Werkzeug在python中构建完整)

我们决定采用这种架构,因为在某些时候移动应用程序将集成到等式中,并且它们可以轻松地将HTTP连接发送到数据子域。数据子域以JSON形式呈现其所有响应,JS前端通常将其视为有效查询响应或错误的响应。

这感觉就像我在一个项目中所做过的最有组织的安排,直到Facebook连接出现在宣言上。

理想情况下,我希望尽可能多地保留网站背后的“动作”数据子域,尤其是身份验证内容,以便手机和移动设备可以使用这些逻辑。如果需要的话。然而,看看facebook文档,浏览器及其会话对象似乎是其OAuth流程中的关键组件。

  

同时处理用户身份验证和应用授权   通过将用户重定向到我们的OAuth对话框。调用此时   对话框,您必须传入创建时生成的应用ID   您的应用程序在我们的Developer App(client_id参数)和   用户浏览器将重定向回一次应用的URL   授权完成(redirect_uri参数)。该   redirect_uri必须位于您指定的站点URL的路径中   Developer App中Summary选项卡的Website部分。请注意,你的   redirect_uri不能是重定向器。

我之前在PHP中已经完成了这个并熟悉了这个过程,当有问题的逻辑可以直接访问浏览器时,这是一个关于3个标题重定向的小问题。我的问题是我们的新应用程序的结构方式,所有业务逻辑都被隔离在另一个子域上。我有什么选择来模拟重定向?我可以让python子域发送HTTP数据,使用CURL从www域接收它,就像所有其他请求一样吗? 我可以将json对象返回给用户的浏览器,指示进行重定向吗? Facebook甚至会接受来自数据子域的请求,其redirect_uri位于子域名www?我发现引用部分中的最后一句可能会折扣作为一种可能性,但我查看了他们的文档并且它没有明确表示这将被视为违规行为。

有没有人有过使用类似架构的Facebook设置此类内容的经验?也许我应该折叠并将FB登录逻辑直接放到PHP中并在那里处理它。

谢谢!

0 个答案:

没有答案