es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo utilizar el SDK de Facebook para PHP en Symfony?

Estoy usando Symfony 5. He agregado oficialmente el PHP SDK recomendado https://github.com/facebookarchive/php-graph-sdk al proyecto utilizando Composer. Tengo un controlador donde intento llamarlo:

class FacebookController extends AbstractController
{
    /**
     * @var Facebook
     */
    private $facebook;

    public function __construct(Facebook $facebook)
    {
        $this->facebook = $facebook;
    }

    public function indexAction()
    {...}
}

}

Pero cuando ejecuto este código, muestra el siguiente mensaje de error:
No se puede autovincular el servicio "App\Controller\FacebookController": el argumento "$facebook" del método "__construct()" hace referencia a la clase "Facebook\Facebook", pero no existe tal servicio.
¿Cómo hacer que la clase Facebook sea “visible” para Symfony?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para hacer visible la clase Facebook en Symfony, es necesario registrarla como un servicio. Esto se puede hacer en el archivo services.yaml que se encuentra en la carpeta config.

    Añade el siguiente código al archivo:

    services:
        Facebook\Facebook:
            arguments:
                $config: '%facebook_credentials%'
    

    Aquí, estamos registrando la clase Facebook como un servicio y pasándole el argumento requerido (en este caso, la configuración de Facebook).

    Asegúrate de definir el parámetro %facebook_credentials% en tu archivo parameters.yaml o donde guardes tu información sensible.

    Ahora, deberías poder utilizar la clase Facebook en tu controlador sin errores.

Comments are closed.