• Saltar a la navegación principal
  • Saltar al contenido principal

JAVIER GUTIÉRREZ

Desarrollador web

  • Newsletter
  • Blog
  • Acerca de mí

Usar la Api de Spotify con Laravel

Cómo crear una aplicación simple con Laravel que acceda a los datos relacionados con el usuario mediante la API de Spotify haciendo uso de Guzzle HTTP client.

Registro de la aplicacion en Spotify

  • Accedemos al dashboard del portal de Spotify para desarrolladores y nos acreditamos con una cuenta de Spotify.
  • Creamos una nueva app y guardamos las claves Client_Id y Client_Secret.
  • En Edit Settings añadimos la dirección a la que queremos que nos redirijan tras loguear al usuario: http://spovel.loc:8085/profile/ (en mi caso).

Configuración de las Variables de Entorno

Creamos las variables de entorno agregando estas dos líneas al archivo .env :

Plain Text
.env

Creamos el fichero config/spotify.php y le añadimos el siguiente código :

PHP
config/spotify.php

Controlador para interactuar con Spotify

Shell

Añadimos un constructor y los atributos que vamos a necesitar, donde $redirectUri será la dirección que especificamos desde el Dashboard de Spotify :

PHP
app/Http/Controllers/SpotifyController.php

Añadimos los 3 métodos que vamos a utilizar :

login ( )

Nos redirecciona a la autorización de cuenta de Spotify para loguearnos, pasando como parámetros en la URL : el scope ( con los permisos correspondientes), nuestro id de cliente y la página a la que debe redirigirnos. En la respuesta obtenemos el parámetro code en la URL.

PHP
app/Http/Controllers/SpotifyController.php

getToken ( )

A través de la función de PHP $_GET( ) accedemos al parámetro ‘code’ para intercambiarlo por un Token.

Aquí hacemos uso de Guzzle HTTP Client, el cual viene incluido en Laravel 8.

PHP
app/Http/Controllers/SpotifyController.php

getUser ( )

Enviamos el Token al end-point de la API de Spotify encargado de devolvernos los datos del usuario y retornamos la Vista que nos muestra dichos datos.

PHP
app/Http/Controllers/SpotifyController.php

Rutas Web

PHP
routes/web.php

Vistas

Home

Vista que nos invita a loguearnos en Spotify :

HTML
resources/views/home.blade.php

Profile

Vista que recibe los datos del usuario y los muestra por pantalla :

HTML
resources/views/profile.blade.php

El código completo se encuentra en el siguiente repositorio de GitHub.

Archivado en: Laravel

Interacciones con los lectores

Comentarios

  1. Eduardo dice

    24/10/2022 en 20:40

    Hola. No hay forma de obtener el bearer token sin el redirect?

    Responder

Responder a Eduardo Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Copyright © 2025 · Genesis Sample on Genesis Framework · WordPress · Iniciar sesión

Usamos cookies para asegurar que te damos la mejor experiencia en nuestra web. Si continúas usando este sitio, asumiremos que estás de acuerdo con ello.AceptarPolítica de privacidad