¡Forja tu API con maestría, esculpe su grandeza en la red!
-
Regístrese en Glitch.
-
Haga clic en New project.
-
Haga clic en Import from GitHub.
-
Pegue https://github.com/djsq200599/ApiJsonServerGltich.git en la entrada del URL y haga clic en Aceptar.
-
Espere a que se configure.
-
Presione el botón Share para obtener su URL del sitio activo. Debería ser algo como por ejemplo: https://api-json-server.glitch.me. Y tu base de datos estará en https://api-json-server.glitch.me/posts.
-
Abre Visual Studio Code.
-
Crea un nuevo directorio para tu proyecto.
-
Dentro del directorio, crea los siguientes archivos:
db.json
(para tus datos)package.json
(para las dependencias y scripts)server.js
(para la configuración del servidor)
{
"personajes": [
{ "id": 1, "nombre": "Personaje1", "tipo": "Atacante", "imagen": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIA..." },
{ "id": 2, "nombre": "Personaje2", "tipo": "Defensor", "imagen": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIA..." }
],
"armas": [
{ "id": 1, "nombre": "Arma1", "tipo": "Rifle", "imagen": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIA..." },
{ "id": 2, "nombre": "Arma2", "tipo": "Pistola", "imagen": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIA..." }
],
"mapas": [
{ "id": 1, "nombre": "Mapa1", "tipo": "Asalto", "imagen": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIA..." },
{ "id": 2, "nombre": "Mapa2", "tipo": "Control", "imagen": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIA..." }
]
}
{
"name": "json-server-glitch-tutorial",
"version": "1.0.0",
"description": "Tutorial de JSON Server en Glitch",
"main": "server.js",
"scripts": {
"start": "node server.js"
},
"dependencies": {
"json-server": "^0.17.0"
}
}
const jsonServer = require('json-server');
const server = jsonServer.create();
const router = jsonServer.router('db.json');
const middlewares = jsonServer.defaults();
const PORT = process.env.PORT || 3000;
server.use(middlewares);
server.use(router);
server.listen(PORT, () => {
console.log(`JSON Server is running on port ${PORT}`);
});
-
Inicializa un nuevo repositorio en GitHub.
-
Abre la terminal de Visual Studio Code.
-
Ejecuta los siguientes comandos:
- git init
- git add .
- git commit -m "Inicializar proyecto con JSON Server"
- git remote add origin https://github.com/tu-usuario/tu-repositorio.git
- git push -u origin master
-
Ve a Glitch.
-
Crea un New project y selecciona "Import from GitHub".
-
Ingresa la URL de tu repositorio y sigue las instrucciones para importar.
¡Y eso es todo! Ahora tienes tu propia API en Glitch utilizando JSON Server. Puedes realizar solicitudes a las rutas específicas para obtener o modificar datos. ¡Diviértete explorando y personalizando tu API!.
- Inicia sesión en tu cuenta de AWS.
- Navega a la sección de EC2 (Elastic Compute Cloud).
- Haz clic en "Launch Instance" para crear una nueva instancia.
- Selecciona una imagen de máquina (AMI) basada en la distribución de Linux que prefieras.
- Elige el tipo de instancia y configura los detalles según tus necesidades.
- Configura la seguridad del grupo: Asegúrate de permitir el tráfico en el puerto que utilizarás para tu servidor JSON (por defecto, podría ser el puerto 80 o 8080 para HTTP).
- Lanza la instancia y crea o selecciona una clave de acceso para conectarte a la instancia.
- Conéctate a tu instancia usando SSH y la clave de acceso que configuraste.
- Actualiza los paquetes del sistema ejecutando
sudo apt update && sudo apt upgrade
. - Instala Node.js:
sudo apt-get install nodejs
. - Instala NPM:
sudo apt install npm
. - Instala JSON Server:
npm install json-server
.
- Crea un archivo JSON con tus datos. Puedes llamarlo, por ejemplo, db.json.
- Agrega los datos que deseas exponer a través de la API en este archivo.
- Crea un archivo llamado server.js.
- En server.js, configura el servidor JSON utilizando el módulo json-server. Aquí tienes un ejemplo básico:
javascript
const jsonServer = require('json-server');
const server = jsonServer.create();
const router = jsonServer.router('/home/ubuntu/json-server/db.json');
const middlewares = jsonServer.defaults();
server.use(middlewares);
server.use(router);
const PORT = 8080; // Cambia esto al puerto que estés utilizando
server.listen(PORT, () => {
console.log(`JSON Server is running on port ${PORT}`);
});
Ahora deberías tener tu servidor JSON ejecutándose en la instancia de AWS en el puerto que hayas especificado. Puedes acceder a tus datos a través de la dirección IP pública de la instancia y el puerto que configuraste en el archivo server.js.
- Crear un archivo de servicio systemd para tu aplicación: crea un archivo de servicio en la ubicación /etc/systemd/system con un nombre descriptivo, por ejemplo json-server.service. Puedes usar un editor de texto como nano para crear y editar el archivo: sudo nano /etc/systemd/system/json-server.service.
- Agrega el contenido del archivo de servicio:
[Unit]
Description=JSON Server
After=network.target
[Service]
ExecStart=/usr/bin/node /home/ubuntu/json-server/server.js
WorkingDirectory=/home/ubuntu/json-server
Restart=always
User=ubuntu
[Install]
WantedBy=multi-user.target
-
Asegúrate de que la ruta en ExecStart y WorkingDirectory sea correcta.
-
Recarga el sistema de systemd: Ejecuta el siguiente comando para recargar los archivos de configuración del sistema de systemd: sudo systemctl daemon-reload.
-
Inicia y habilita el servicio: Ejecuta los siguientes comandos para iniciar y habilitar el servicio para que se inicie automáticamente al arrancar: sudo systemctl start json-server y sudo systemctl enable json-server.
-
Verifica el estado del servicio: Verifica el estado del servicio para asegurarte de que se está ejecutando correctamente: sudo systemctl status json-server.
Si estás experimentando dificultades para identificar el problema, puedes ejecutar manualmente el comando para iniciar tu servidor JSON en la terminal y observar cualquier mensaje de error que se imprima. Por ejemplo:
/usr/bin/node /home/ubuntu/json-server/server.js
Verifica los registros: Si el servicio no se inicia correctamente, revisa los registros detallados del servicio para obtener información adicional sobre el error:
journalctl -u json-server.service
¡Y eso es todo! Ahora tienes tu propia API en una instancia virtual de AWS utilizando JSON Server. Puedes realizar solicitudes a las rutas específicas para obtener o modificar datos. ¡Diviértete explorando y personalizando tu API!.