Qué es la API REST en laravel: Todo lo que necesitas saber

Publicado: 2022-11-03

El mundo se está volcando por completo hacia la facilidad de usar dispositivos móviles y buscar soluciones en línea. El diseño web y el desarrollo web están progresando de forma masiva en el mundo actual.

La mayor parte de la demanda se ha dirigido a los teléfonos inteligentes, ya que el desarrollo de sitios web también abarca el desarrollo de aplicaciones móviles. Dicho esto, para las aplicaciones móviles, el backend requiere una API tranquila.

Si no sabe qué es REST API, ¡está bien! Te tenemos cubierto.

En este blog, explicaré qué es la API de descanso y cómo funciona. También explicaré cómo desarrollar una API tranquila en Laravel.

Empecemos…

¿Qué es la API REST?

APi es una interfaz de programación de aplicaciones, que nos ayuda a conectar un dispositivo a otro dispositivo, por ejemplo, cónyuge, tenemos un sitio web en vivo y ahora queremos crear una aplicación móvil, por lo que crearemos una API para conectar los datos al dispositivo, tenemos que usar JSON datos para pasar en el dispositivo para que esto pueda hacerse solo con API.

A veces, se necesita una API REST de comunicación de red o una API de transferencia de estado representacional.

¿Como funciona?

Al principio, tenemos que instalar la aplicación laravel en nuestro sistema para poder seguir la documentación oficial de laravel que nos ayudará a avanzar más. Aquí está el enlace del documento que se puede seguir para instalar la aplicación laravel:

http://laravel.com/

Para instalar la aplicación, use este comando, pero asegúrese de tener Composer en su sistema, ya que Composer es una herramienta de dependencia que ayuda a instalar todas las dependencias en la aplicación, puede seguir este enlace:

https://getcomposer.org/download/

Una vez que instale Composer, puede descargar Laravel, use este comando:

compositor create-project --prefer-dist laravel/laravel laravel-sanctum-auth

Una vez que se instala el proyecto, debe configurar los detalles de la base de datos en el archivo .ENV, así que simplemente complete el nombre de su base de datos en el archivo ENV.

Como funciona El siguiente paso es instalar el paquete API. Hay muchos paquetes disponibles, pero puede instalarlos según su elección.

Entonces, para instalar el paquete, debe seguir el comando según se indica en la documentación de laravel. Como voy a usar Sanctum, usaré este comando:

el compositor requiere laravel/sanctum

  Después de ejecutar este comando, mi paquete se instalará y estará listo para usar. Simplemente siga la captura de pantalla a continuación: como funciona 2

Una vez que hayamos terminado con la configuración del paquete, el siguiente paso es crear un modelo para la base de datos. Crearemos un modo y migración que se conectará a la base de datos directa,

archivo app/Modelos/Usuario.php.

<?php

espacio de nombres App\Modelos;

use Illuminate\Contracts\Auth\MustVerifyEmail;

use Illuminate\Database\Eloquent\Factories\HasFactory;

utilice Illuminate\Foundation\Auth\User como autenticación;

utilice Illuminate\Notifications\Notificable;

// santuario

usa Laravel\Sanctum\HasApiTokens;

clase Usuario extiende Autenticable

{

use HasApiTokens, HasFactory, Notificable;

 

/**

* Los atributos que son asignables en masa.

*

* Matriz @var

*/

protegido $rellenable = [

'nombre',

'Email',

'clave',

];

 

/**

* Los atributos que deben ocultarse para las matrices.

*

* Matriz @var

*/

protegido $ oculto = [

'clave',

'token_recordar',

];

 

/**

* Los atributos que se deben convertir a los tipos nativos.

*

* Matriz @var

*/

$emisiones protegidas = [

'email_verified_at' => 'fechahora',

];

}

como funciona 3

  Ahora tenemos que crear un controlador, así que use este comando para crear un controlador

PHP craft make::controller NOMBRE DEL CONTROLADOR

archivo app/Http/Controllers/API/BaseController.php:

<?php



espacio de nombres App\Http\Controllers\API;

utilice Illuminate\Http\Request;

use App\Http\Controllers\Controller como controlador;



clase BaseController extiende controlador

{

/**

* método de respuesta de éxito.

*

* @return \Illuminate\Http\Respuesta

*/

función pública enviarRespuesta($resultado, $mensaje)

{

$respuesta = [

'éxito' => verdadero,

'datos' => $resultado,

'mensaje' => $mensaje,

];

 

devolver respuesta()->json($respuesta, 200);

}



/**

* respuesta de error de retorno.

*

* @return \Illuminate\Http\Respuesta

*/

función pública sendError($error, $errorMessages = [], $code = 404)

{

$respuesta = [

'éxito' => falso,

'mensaje' => $error,

];

 

if(!empty($errorMensajes)){

$respuesta['datos'] = $mensajes de error;

}

 

devolver respuesta()->json($respuesta, $código);

}

}

Tenga en cuenta: cada vez que creamos una API, siempre enviamos una respuesta en JSON con un código de estado.

como funciona 4

Para la API, siempre creamos un token de autenticación. Significa que si se creará y verificará el token, entonces podremos autenticar a los usuarios.

<?php

espacio de nombres App\Http\Controllers\API;

utilice Illuminate\Http\Request;

use App\Http\Controllers\API\BaseController como BaseController;

use Illuminate\Support\Facades\Auth;

usar Validador;

use Aplicación\Modelos\Usuario;

clase AuthController extiende BaseController

{

inicio de sesión de función pública (Solicitud $ solicitud)

{

if(Auth::attempt(['email' => $solicitud->email, 'contraseña' => $solicitud->contraseña])){

$authUser = Autenticación::usuario();

$éxito['token'] = $authUser->createToken('MyAuthApp')->plainTextToken;

$éxito['nombre'] = $authUser->nombre;

return $this->sendResponse($success, 'Usuario registrado');

}

más{

return $this->sendError('No autorizado.', ['error'=>'No autorizado']);

}

}

registro de función pública (Solicitud $ solicitud)

{

$validator = Validator::make($request->all(), [

'nombre' => 'requerido',

'correo' => 'obligatorio|correo',

'contraseña' => 'requerido',

'confirm_password' => 'obligatorio|igual:contraseña',

]);

if($validador->falla()){

return $this->sendError('Error de validación', $validator->errors());

}

$entrada = $solicitud->todos();

$entrada['contraseña'] = bcrypt($entrada['contraseña']);

$usuario = Usuario::crear($entrada);

$éxito['token'] = $usuario->createToken('MyAuthApp')->plainTextToken;

$éxito['nombre'] = $usuario->nombre;

return $this->sendResponse($success, 'Usuario creado con éxito');

}

}

Este archivo de ruta:

como funciona 5 Finalmente, para ejecutar el proyecto, necesitamos ejecutar este comando:

servicio artesanal php

Terminando

Las API impulsan muchos de los sitios web y servicios más populares de la actualidad, desde redes sociales hasta aplicaciones financieras. En este blog, se le presentó la API REST en Laravel. Esperamos que esto haya sentado las bases para su comprensión de qué es la API REST y cómo funciona.

Si está buscando servicios de desarrollo web, no necesita buscar más. En webdew, podrá encontrar un equipo proactivo de diseñadores y desarrolladores web calificados para diseñar y construir el sitio web de su empresa. Contáctanos para saber más.