2015-10-13 62 views
0

我在Symfony2中构建了一个REST API。这个想法是使用这些apis从一个角度的web应用程序和一个移动应用程序。需要认证才能使用这些API。用于角度应用程序和移动应用程序的API REST

我认为在以下possibilites:

  • 独立Symfony和在diferent项目角: 下/ API中的URL将使用的OAuth2来认证用户(FOSOAuthServerBundle)。网络和移动应用都需要使用访问令牌。

  • 在Symfony中包含角色:在web应用中,用户使用symfony表单进行身份验证,因此无需使用OAuth2保护/ api下的网址。但是,如何从移动应用认证用户?

请帮忙,任何帮助!

总之,我需要的是这些API可以从两个客户端使用:Web应用程序和移动应用

谢谢!

回答

0

总是选择一些已经为很多人测试过并且被他们使用过的解决方案。所以,我认为使用OAuth技术会更好,所以您可以通过移动设备,网络和其他技术来使用您的api。

如果您将加入API并且WEBApp取决于您。因为REST不使用会话,并且每个呼叫都是您需要检查并阻止或响应的新呼叫。我有一个应用程序在同一个项目中有一个Codeigniter API和一个AngularJS应用程序,但是thoose不会与会话共享任何专属的东西。

0

我目前正在学习和遭受同样的问题,迄今为止我见过的最好的选择是保持项目分离。如果您在Symphony项目中包含angularJS,则最终将使用Symphony提供的资源,您将无法在移动结构中进行复制。通过完全将服务器与客户端分开,只有使用Angular构建的Web应用程序将更类似于您的移动应用程序,模仿独立应用程序模式。

就我个人而言,我选择了JWT Auth,因为它不需要数据库中的12个表格,但使用OAuth2会有类似的结果。

0

我建立电子商务与FOSRestBundle,HWIOOauthBundle和FOSUserBundle 从服务器端生成的accessToken并通过API /登录/ API认证/ login_check/ 写你security.yml路由接入 从客户端,请致电您的API。它应该呈现200或403 HTTP_Code。

相关问题