Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php RESTfulWebService的Symfony2用户提供程序_Php_Symfony - Fatal编程技术网

Php RESTfulWebService的Symfony2用户提供程序

Php RESTfulWebService的Symfony2用户提供程序,php,symfony,Php,Symfony,我试图在symfony2中创建一个简单的用户提供者,但我不知道这应该如何与web服务一起工作。我公司的身份验证由RESTful Web服务处理,有多种途径: POST /user, GET /user, POST /login 因此,在创建Symfony 2应用程序时,我的用户提供商必须咨询web服务以验证凭据和权限。这可能吗?像这样的东西有包吗 另外,我怎样才能在这方面取得好的成绩?根据Symfony用户提供者的工作方式,我猜它会在每次请求时咨询web服务,以获取用户数据。这可以避免吗?您可

我试图在symfony2中创建一个简单的用户提供者,但我不知道这应该如何与web服务一起工作。我公司的身份验证由RESTful Web服务处理,有多种途径:

POST /user, GET /user, POST /login
因此,在创建Symfony 2应用程序时,我的用户提供商必须咨询web服务以验证凭据和权限。这可能吗?像这样的东西有包吗


另外,我怎样才能在这方面取得好的成绩?根据Symfony用户提供者的工作方式,我猜它会在每次请求时咨询web服务,以获取用户数据。这可以避免吗?

您可以通过实现身份验证提供程序和用户提供程序来做到这一点,每个提供程序都将处理对web服务进行身份验证的调用。 您可以使用一个客户机类来进行web服务调用,并将响应缓存在某个位置,以避免调用每个请求,尽管这取决于web服务的速度有多慢


我已经采用了这种方法,因此如果需要,可以填补空白

您可以使用两个很棒的捆绑包:

要处理REST请求,请尝试FOSRestBundle(), 对于用户提供程序,请尝试FOSUserBundle()


这些都是很好的捆绑包,您也可以获得很好的文档。

这不是我想要的,请再次阅读该问题。我做到了,我的问题是:如何避免常见的陷阱,例如由于请求饱和而导致性能差?正如我前面所说的,我担心Symfony在每次请求时都会调用webservice(通过UserProvider)。正如我所说的,在api客户机中实现响应缓存。缓存到redis、memcache或其他东西。很确定你没有说你是那样做的,所以不应该得到负1