martes, 4 de octubre de 2016

Servidor Web con Express y NodeJS en Android


Veremos como montar un servidor con express y nodejs en Android dado que buscando en Internet encontré varios tutos pero en mi caso mi dispositivo android no era compatible con Termux algunos tutos son un poco engorrosos y todos están en ingles así que decidí hacer una pequeña entrada con lo básico de como levantar un server de node en android en español tampoco me detendré mucho en cada paso. por que si estas leyendo esto algo estas cocinando y tienes alguna idea :P 

Paso 1 ) Instalaremos GNUroot Debian desde la PlayStore


Paso 2 ) Una vez instalado abrimos la app en y en la pestaña de INSTALL/UPDATE hacemos click sobre Install/Reinstall



Paso 3)  Abrimos la pestaña de LAUNCH  y hacemos click sobre Launch


Paso 4) una vez inicie lo Primero que haremos es escribir:

apt-get update && apt-get upgrade 

Descripción :
apt-get update: actualiza la lista de paquetes disponibles y sus versiones.
apt-get upgrade. Instalará las nuevas versiones disponibles.                    


Paso 5) una vez termine el anterior escribimos 

apt-get install build-essential

Descripción :
Se trata de un paquete que contiene una lista informativa de los paquetes que se consideran esenciales para la creación de paquetes Debian.


Paso 6) Instalaremos Nodejs  con el siguiente comando 

apt-get install -y nodejs


NOTA: Una vez instalado haremos una prueba escribiendo nodejs si sirve nos entra a una consola de cual sladremos presionando dos veces ctrl+c.

si no sirve y nos arroja un error tenemos que escribir la siguiente linea

ln -s /usr/bin/nodejs /usr/bin/node

Paso 7) una vez instalado node crearemos y accederemos a la carpeta que usaremos para nuestro proyecto:

mkdir node  
cd node       

Descripción:
mkdir : crea carpeta llamada “node”
cd : accede a dicha carpeta             


Paso 8) este paso es opcional consiste en crear el archivo package.json que es el que mostrara descripción de nuestro proyecto como nombre del autor, dependencias, dependencias de desarrollo, licencia , etc. usaremos el comando y responderemos todas las preguntas 

npm init 


Paso 10) ahora instalaremos express con el definiremos las rutas de nuestro proyecto comando

npm install –save express


Ya en teoría tenemos todo listo simplemente falta editar el archivo server.js o como quieras llamarle como cosa personal les recomiendo no editarlo por consola con vim a menos que seas muy masoquista y tengas una vista en perfecto estado, porque las letras son muy peque adicional mente tienes que instalar un teclado que tenga las flechas para moverte dentro del archivo y la tecla "esc" para poder usar vim y a menos que lo hagas en una tablet de verdad es super incomodo así.

Asi que te propongo esto.


Paso 1) instalamos aide web desde la PlayStore.



Paso 2) iniciamos el programa accedemos al menu abriendo los tres puntos azules abajo a la izquierda pulsamos Create New Project


Paso 3) elegimos JavaScript Application


Paso 4) ponemos un nombre al proyecto en este caso le puse server 


paso 5) modificaremos el archivo que en este caso se llama "main.js" ya después le cambiaríamos el nombre

en este caso pondré esta configuración de ejemplo para hacer la prueba de que el servidor funciona.

----------------------------------------------- main.js -----------------------------------------------------

var express = require("express");

var web = express();
var servidor;

servidor = web.listen(3000,function()
{
  console.log("Arrancoo el Server");
}
);

web.get("/",function (req,res)
{
  res.send("Funciono!!");
}
);
------------------------------------------------------------------------------------------------------------

después de modificar pulsamos el botón de menú y le damos guardar


Paso 6) ahora copiamos el archivo main.js a la carpeta de node si quieres puedes cambiar el nombre en mi caso solo lo copiare.

Entraremos a la carpeta con el comando y después copiaremos el archivo

cd /sdcard/AppProjects/server/
cp main.js /node/                     


NOTA: También puedes hacerlo en una sola linea 

cp /sdcard/AppProjects/server/main.js  /node/

Paso 7) iniciamos el servidor cargando el archivo main.js con el comando

nodejs main.js


NOTA: Vemos que inicio por que nos arroja "Arranco el Server"

Paso 8) verificamos si podemos acceder al servidor abrimos el navegador y escribimos la dirección de loopback para que apunte a nuestro servidor seguido de ":" y el numero de  puerto 

Listo Funciono correctamente es todo :) disculpen si tengo algún error ortográfico o un tipo espero poder "verlos" pronto.