You are on page 1of 15

CARRERA DE INGENIERA DE SISTEMAS

LABORATORIO DE SISTEMAS DISTRIBUIDOS


NMERO DE PRCTICA: SD-IS.9.2- Prctica 08
NOMBRE DE LA PRCTICA: Creacin de Servicios Web REST Full en
Django.
1. DATOS INFORMATIVOS:
CARRERA: INGENIERA DE SISTEMAS
CICLO/NIVEL: 9no. SEMESTRE A
FECHA: 19-07-2016
DOCENTE RESPONSABLE: ING. BERTHA MAZN
LABORATORIO: #5
2. FUNDAMENTACIN
Para el caso de la comunicacin con plataformas externas, podemos utilizar
Web Services con diferentes protocolos de comunicacin como SOAP y
REST para construir APIs web robustas.
En esta ocasin se hablar de Django REST framework que es un
framework desarrollado en Python, el cual nos permite montar un motor
REST de nuestra plataforma de manera rpida y sencilla; incluye gran
cantidad de cdigo para reutilizar (Views, Resources, etc.) y una interfaz
administrativa desde donde se puede realizar pruebas sobre las
operaciones HTTP como lo son: POST y GET.

3. OBJETIVOS:
Configurar 4 servicios web utilizando el framework Django del
lenguaje de programacin Python, con la finalidad de evitar la
sobrecarga en el consumo de la base de datos Postgres.
4. MATERIALES E INSUMOS
- 2 Computadora.

CARRERA DE INGENIERA DE SISTEMAS

Sistema Operativo Windows 10.


Software de servicio de Base de Datos:
o PostgreSQL.
Lenguaje de programacin
o Phyton
Framework
o Django

5. PROCEDIMIENTO

Instalacin del Django Rest Framework.

Creacin de las clases que se va a utilizar en el rest web service


(views, model, serializers).

Configuracin del Rest framework en Django en setting.py y en


serializers.py.

Agregar la URL del rest_framework perteneciente a las clases que


son del archivo serializers.py.

Migrar la base de datos a travs de comando Python para utilizar el


Rest web Service.

Comprobacin de la URL del Rest web service mediante los mtodos


POST, PUT y DELETE e insertar datos a la tablas de la base de
datos.

CARRERA DE INGENIERA DE SISTEMAS

CARRERA DE INGENIERA DE SISTEMAS

6. RESULTADOS
WEB SERVICE LOGIN

Uso de advance REST client para la verificacin de los servicios web

CARRERA DE INGENIERA DE SISTEMAS

En la porcin del request colcamos al URL de donde se esta difundiendo el


servicio

Luego seleccionamos el mtodo de envio y el tipo de respuesta que se recibe


del servicio

Para el caso de autenticacin es necesario que el mtodo de envi sea POST


Enviamos el diccionario requerido por el web service

Luego de realizar el envo vamos a obtener un diccionario de respuesta,

CARRERA DE INGENIERA DE SISTEMAS

En caso de que el diccionario enviado no cumpla los requerimientos.

Obtendremos una respuesta como:

Para comprobar el web service de listado de usuarios en el sistema, es


necesario especificar el token del usuario en referencia logueado

CARRERA DE INGENIERA DE SISTEMAS

Una vez enviada la peticin, y si el token pertenece al usuario logueado


actualmente, obtendremos el siguiente diccionario.

CARRERA DE INGENIERA DE SISTEMAS

CARRERA DE INGENIERA DE SISTEMAS

WEB SERVICE LOCALIZACIN


Rest Framework maneja su propia interfaz para Web Service. Al ingresar a la API alojada en el
localhost se puede visualizar la estructura junto con los mtodos que se utilizan:

CARRERA DE INGENIERA DE SISTEMAS

Se ingresan datos para almacenarlos en la base de datos, con la finalidad de comprobar que
efectivamente el servicio web cumple con su funcionamiento:

CARRERA DE INGENIERA DE SISTEMAS

Para comprobar que el resultado final es correcto, se puede


observar la estructura del web Service:

Web Service Alertas

CARRERA DE INGENIERA DE SISTEMAS

Posteriormente se deber acceder a una de las URLs del archivo de


URLs, en este caso accederemos a 127.0.0.1:8000/rest, en dicha
URL se puede visualizar una plantilla de RESTFUL que permite
visualizar los modelos serializados a travs de las vistas de su propia
estructura de proyecto views.py, ara este caso solo encontramos el
modelo Estaciones al cual se acceder dando clic en el enlace
asociado al mismo:

Al acceder a el webservice de la tabla de la base de datos que ha sido


serializada podremos notar que el web service nos retorna datos solo
de las estaciones que exceden el lmite de contaminacin que para
este caso es un lmite de 1000, por lo cual solo obtendremos los
registros que cumplan esa condicin y los dems no se visualizarn:

CARRERA DE INGENIERA DE SISTEMAS

Se puede observar los datos que son devueltos por el web Service en
donde su lmite de contaminacin excede del valor 1000:

7. CONCLUSIONES

CARRERA DE INGENIERA DE SISTEMAS

El Web Service de logue permite el consumo de la informacin de los


usuarios que han creado una cuenta para acceder al uso de la

aplicacin.
El Web Service de Localizacin permite ubicar cada sensor que se
encuentran en los tanques con la finalidad de saber si se encuentran
activos o inactivos; o en el caso de que emitan una alerta, poder

localizar rpidamente el tanque donde se produjo la seal.


El Web Service para alertas emite datos sobre un listado de registros
filtrados por nivel de contaminacin para su posterior uso en una
alerta sobre la calidad del agua. De esta forma, se puede identificar
si el agua almacenada en un tanque es apta para el consumo o no lo

es.
Dicho servicio web es emitido en formato JSON o API, de forma que

permita adaptarse a las necesidades de uso del mismo.


Los Web Service permiten a distintas aplicaciones comunicarse entre
ellos sin necesidad de escribir programas costosos, debido a que la
comunicacin se hace con XML.

8. RECOMENDACIONES
Se recomienda realizar una segunda aplicacin si ya se tiene una
dentro del proyecto de Django para el Web Service, de manera que
este contenga sus propias vistas y un archivo de socializacin de

modelos.
Se recomienda la implementacin de Web Service en las
organizaciones ya que permite intercambiar datos sin necesidad de

conocer los detalles de sus respectivos Sistemas de Informacin.


Asegurarse de que la red est en pleno funcionamiento, ya que tener
acceso a internet es muy importante para realizar las instalaciones
que se necesitan para el uso de los distintos servicios o aplicaciones.

CARRERA DE INGENIERA DE SISTEMAS

Es importante tener un vasto conocimiento en relacin al lenguaje de


programacin Python, ya que Django Rest Framework es una

aplicacin derivada de este lenguaje.


Cumplir paso a paso con las configuraciones que se necesitan para
utilizar las aplicaciones es de suma importancia, ya que obviar un
paso o realizarlo mal puede conllevar a errores.

You might also like