Este documento presenta Automatic API REST, una herramienta de código abierto que crea automáticamente una API REST completa a partir de una base de datos MySQL o MariaDB. Proporciona enlaces que entregan datos en formato JSON o XML, permitiendo el intercambio de información entre aplicaciones de diferentes lenguajes de programación. Incluye un panel de control para administrar el acceso a tablas y campos de la base de datos.
AIR POLLUTION CONTROL course material by Prof S S JAHAGIRDAR,NKOCET,SOLAPUR for BE (CIVIL ) students of Solapur university. Content will be also useful for SHIVAJI and PUNE university students
Steel slag utilization — overview in indian perspective.Manoj Kumar Tiwari
Current total productions of steel slag in India, are around 12 million tonnes per annum (Indian Minerals Yearbook, May 2016), which is far behind the developed countries. Presently in India, due to limited modes of practices of utilization, huge amount of iron and steel slag dumped in yards of each production unit and engaging of important agricultural land and grave pollution to whole environment. An efficient approach to overcome these problems is the slag utilization. Physical and chemical characterization of steel slag is a deciding factor of steel slag utilization as recycled raw material as road aggregate, cement and concrete admixture, soil stabilizer and construction materials, etc. This review presents utilization trends of steel slag and possible potentials for large-scale employment of steel slag in Indian context
Lecture notes of Environmental Engineering-II as per Solapur university syllabus of TE CIVIL.
Prepared by
Prof S S Jahagirdar,
Associate Professor,
N K Orchid college of Engg and Technology,
Solapur
This ppt describes the usage of plastics and its management
Though plastics has huge applications, it has various harm fullness. So we need to find methods to manage plastic waste.
This report examines different things in admixtures (super plasticizers) such as solid content, rheological properties and chloride content. Different test were conducted to determine the above properties.
Principios básicos de la Arquitectura Rest, haciendo especial hincapié en las 6 restricciones que permiten crear API altamente escalables (Uniform Interface, Stateless, Cacheable, Client-Server, Layered System y Code on Demand).
Estas restricciones son la base de la Arquitectura REST y aplicarlas nos ayudaran a conseguir buenos diseño: correcto nombrado de los servicios, recursos, aplicar el método (GET, POST, PUT, DELETE) apropiado a la acción, descubrir recursos basándonos únicamente en las respuestas del servidor (HATEOAS), ..
Además, conoceremos el Modelo de Madurez Richarson que nos permite conocer en que punto nos encontramos dentro de la arquitectura, algunos antipatrones de diseño y ejemplos de API REST (Twitter, Facebook).
AIR POLLUTION CONTROL course material by Prof S S JAHAGIRDAR,NKOCET,SOLAPUR for BE (CIVIL ) students of Solapur university. Content will be also useful for SHIVAJI and PUNE university students
Steel slag utilization — overview in indian perspective.Manoj Kumar Tiwari
Current total productions of steel slag in India, are around 12 million tonnes per annum (Indian Minerals Yearbook, May 2016), which is far behind the developed countries. Presently in India, due to limited modes of practices of utilization, huge amount of iron and steel slag dumped in yards of each production unit and engaging of important agricultural land and grave pollution to whole environment. An efficient approach to overcome these problems is the slag utilization. Physical and chemical characterization of steel slag is a deciding factor of steel slag utilization as recycled raw material as road aggregate, cement and concrete admixture, soil stabilizer and construction materials, etc. This review presents utilization trends of steel slag and possible potentials for large-scale employment of steel slag in Indian context
Lecture notes of Environmental Engineering-II as per Solapur university syllabus of TE CIVIL.
Prepared by
Prof S S Jahagirdar,
Associate Professor,
N K Orchid college of Engg and Technology,
Solapur
This ppt describes the usage of plastics and its management
Though plastics has huge applications, it has various harm fullness. So we need to find methods to manage plastic waste.
This report examines different things in admixtures (super plasticizers) such as solid content, rheological properties and chloride content. Different test were conducted to determine the above properties.
Principios básicos de la Arquitectura Rest, haciendo especial hincapié en las 6 restricciones que permiten crear API altamente escalables (Uniform Interface, Stateless, Cacheable, Client-Server, Layered System y Code on Demand).
Estas restricciones son la base de la Arquitectura REST y aplicarlas nos ayudaran a conseguir buenos diseño: correcto nombrado de los servicios, recursos, aplicar el método (GET, POST, PUT, DELETE) apropiado a la acción, descubrir recursos basándonos únicamente en las respuestas del servidor (HATEOAS), ..
Además, conoceremos el Modelo de Madurez Richarson que nos permite conocer en que punto nos encontramos dentro de la arquitectura, algunos antipatrones de diseño y ejemplos de API REST (Twitter, Facebook).
SEMINARIO: Servicios REST. Bases de la tecnología y soporte con Spring MVCParadigma Digital
En este seminario se impartirá una introducción al concepto detrás de la tecnología REST. Adicionalmente, se introducirá al asistente a la implementación de un servicio REST, usando para ello el stack que ofrece el framework Spring, y mas concretamente las nuevas versiones de Spring MVC”. Con este seminario abrimos el nuevo curso 2012/2013, en el que Paradigma irá cada tres semanas aproximadamente ofreciendo una temática nueva.
Más información: http://www.paradigmatecnologico.com/seminarios/seminario-servicios-rest-bases-de-la-tecnologia-y-soporte-con-spring-mvc/
Code Smells y SOLID: A qué huele tu código?Johnny Ordóñez
A qué huele tu código? Cómo detectar olores en mi código?
Una mirada hacia las buenas prácticas de programación y la forma de detectar y corregir problemas frecuentes para de esta forma crear un código de calidad aplicando los principios SOLID.
Building Automated REST APIs with PythonJeff Knupp
Writing REST APIs with ORMs and web frameworks is a chore. I'm lazy, and I don't want to write boring code. In this talk, I'll go over what REST APIs are, why they're useful, and why we should never have to write one from scratch again.
By the end of this talk, we'll have achieved developer Nirvana: a RESTful API service and Admin interface for existing databases *without writing any code*.
Workshop sobre APIs realizado el 27 de abril en el Centro de Innovación de BBVA. En este evento hemos visto los detalles del funcionamiento, gestión de errores y conceptos de seguridad aplicados a APIs.
A veces, parece fácil definir una API pero la experiencia indica que la mayor parte de los problemas vienen precisamente de la mala definición de la misma. En el taller de definición de Apis, aprenderemos a definir correctamente una APi Restful, caules son los parámetros aconsejables a tener en cuenta, y se analizará un ejemplo de una API con un servicio GET, POST, PUT y DELETE. Para realizar el taller se utilizará el lenguaje RAML y la herramienta api designer de Mulesoft.
Presentación que muestra como definir una API Rest con RAML, definiendo los servicios GET/PUT/POST... Se utilizarán las herramientas de Mulesoft para diseñar la API con ApiDesigner
Sesión impartida por Alejandro Martín Bailón sobre Metadata Security, La Foca y MetaShield Protector en el evento del décimo aniversario de Informática64. El pasado 1 de Octubre de 2009.
Web Semántica de la teoría a la práctica: lecciones aprendidas en ambientes p...SemanticWebBuilder
En el INFOTEC se ha privilegiado la Web Semántica como plataforma de desarrollo por más de 10 años, lo cual ha tenido como resultado la construcción de varios productos Open Source, como lo es el SemanticWebBuilder el cual está siendo utilizado en gran parte de los principales portales del gobierno mexicano. En esta presentación deseamos compartir nuestras experiencias y lecciones aprendidas en el uso de las técnicas y tecnologías asociadas a la Web Semántica en entornos productivos, buscando tener un número mayor de casos de éxito en esta tendencia de desarrollo.
1. Automatic API REST
Simplifica tus consultas
Alejandro Esquiva Rodríguez
(@alex_esquiva)
Automatic API REST: Simplifica tus consultas by Geeky Theory is
licensed under a Creative Commons Reconocimiento-
NoComercial-CompartirIgual 4.0 Internacional License.
2. ¿Quiénes Somos?
• Geeky Theory es comunidad de “geeks para geeks”,
para los amantes de las nuevas tecnologías.
• Misión: Compartir conocimientos. Creamos tutoriales
y artículos sobre diversos temas: Android, Arduino,
Raspberry Pi, Java, PHP, Windows Phone, entre
otros.
4. ¿Quiénes Somos?
Objetivos:
• Ser una web influyente y de referencia en el ámbito geek.
• Enseñar, inspirar y ayudar a programar.
• Generar conocimientos y debates relacionados con las áreas STEM
(ciencia, tecnología, ingeniería y matemáticas).
• Crecer. Queremos más autores, más publicaciones, más conocimientos.
5. ¿Qué es una API REST?
API
• Una API representa una interfaz de comunicación entre componentes de
software.
6. ¿Qué es una API REST?
REST
• Transferencia de estado Representacional.
• Está orientado a transferencia de recursos.
• Arquitectura cliente/servidor sin estado: ni el cliente ni el servidor necesitan
recordar ningún estado de las comunicaciones entre mensajes.
• Hace uso del protocolo HTTP.
• Cada recurso es únicamente accesible a través de su URI.
• Los datos son generalmente ofrecidos en formato JSON o XML .
• Control de errores.
7. ¿Qué es una API REST?
Cada recurso es accesible a través de una única URI.
URIs
8. ¿Qué es una API REST?
El cliente hace peticiones al
servidor usando el protocolo
HTTP. El servidor le responde a
través del mismo protocolo.
Arquitectura Cliente - Servidor
9. ¿Qué es una API REST?
• GET
Pedir información a un recurso.
• POST
Create: Orden para insertar información.
Update: Modificar información.
• PUT
Create: Orden para insertar información.
Update: Modificar información.
• DELETE
Eliminar información del servidor.
Operadores API REST
10. ¿Qué es una API REST?
JSON
Formatos de salida
XML
12. Android y APIs
Necesidad
• Base de datos externa.
• Interacción de datos entre servidor y cliente.
• Aplicaciones multiplataforma
13. Automatic API REST
¿Qué es?
• Una herramienta Open Source.
• Crea una completa API de tu base de
datos MySQL o MariaDB.
• Proporciona una red automática de
enlaces que proporcionan la información
en JSON o XML.
• Intercambia información entre distintos
lenguajes de programación.
• Panel de control para gestionar la
privacidad de las tablas o campos de la
base de datos.
http://AutomaticApiRest.info
14. Automatic API REST
Especificaciones
• Creación de enlaces únicos para cada recurso (URIs)
• Gestión de privacidad de las tablas.
• No altera la estructura de la base de datos.
• Obtener datos (GET) en formato JSON y XML.
• Insertar datos (POST) a través de enlaces únicos.
• Modificar Datos (POST) a través de enlaces únicos.
• Gestión de errores.
15. Automatic API REST
Modo de empleo
• Aplicación de servidor
1. Instalar Automatic Api Rest en un servidor con soporte para PHP y MySQL.
2. Configurar el archivo config.php con los credenciales del servidor y apuntar a
nuestra base de datos.
3. Entrar en el panel de control con los credenciales que hemos indicado en el archivo
config.php
4. Indicar que tablas y campos son privados, deshabilitando la opción de
obtener/añadir/modificar/eliminar datos.
16. Automatic API REST
Modo de empleo (GET)
• Aplicación de cliente (java, Python, c++,…)
1. Seleccionar los enlaces que queremos consultar desde el panel de control de
Automatic API Rest.
2. Obtener el json/xml de la petición.
3. Parsear datos obtenidos.
17. Automatic API REST
Modo de empleo (POST)
• Aplicación de cliente (java, Python, c++,…)
1. Seleccionar el enlace donde queremos enviar la información.
2. Preparamos un json o xml (también se puede insertar desde parámetros POST) con
los datos a insertar o modificar.
3. Enviar la petición
4. Obtenemos la respuesta con los resultados de la consulta
18. Cuando Usar Automatic API REST
• ¿Tienes una aplicación que necesite obtener datos de
una base de datos externa?
• ¿Tienes una aplicación que sea multiplataforma?
• ¿Quieres ahorrar tiempo en el desarrollo de una API?
19. Ejemplo de uso: Base de datos
Descarga de la base de datos de prueba.
http://dev.mysql.com/doc/index-other.html
• Base de datos: World
• Número de tablas: 3
• city: 4079 filas
• country: 239 filas
• countrylanguage: 991 filas
city
countrylanguage
country
20. Ejemplo de uso: Instalación
1. Descargamos Automatic API REST.
2. Extraer el zip y subir todo el directorio a la raíz principal
de vuestro servidor.
3. Abrir el archivo config.php y rellenar todos los campos
con los credenciales de la base de datos.
4. Visitar
http://tudominio.com/AutomaticaApiRest
21. Ejemplo de uso: Config.php
• SERVER: localhost
• USER: Usuario de la base de datos
• PASS: Contraseña del usuario de la base de datos
• DB: Base de datos a la que queremos apuntar
• USERADMIN: cuenta de administrador de AAR
• PASSADMIN: contraseña de administrador
22. Ejemplo de uso: Log In
http://tudominio.com/AutomaticaApiRest
24. Ejemplo de uso: Navegación
Home: Enlace al inicio del panel de control.
Documentation: Documentación del proyecto. [En Construcción]
Black List: Gestión de las tablas privadas.
GitHub: Enlace al proyecto en GitHub
Close: Cierre de la sesión.
25. Ejemplo de uso: Gestión de tablas
Table Name: Nombre de la tabla de la base de datos.
API Link: Dirección única del recurso donde vamos a consultar todos los datos en formato JSON
de la tabla.
Items: Número de Items que tiene la tabla.
Show Table: Mostrar una tabla con los datos de la tabla seleccionada.
Privacity: Esta casilla muestra si la tabla es pública o privada, en caso de que sea privada no se
podrá ni consultar ni gestionar la tabla.
26. Ejemplo de uso: Gestión de campos
Column: Nombre del campo de la tabla seleccionada.
API Link: Enlace que genera un JSON con toda la información del campo encapsulado.
Show Table: Ver una tabla con los datos del campo seleccionado.
Select: Consulta personalizada (Ver siguiente punto).
Privacity: Privacidad del campo.
27. Ejemplo de uso: Consulta Personalizada
Observamos que podemos personalizar la consulta de datos, si por ejemplo sólo nos interesa el ID
y el nombre de los últimos 5 registros de la tabla city ordenados por el campo Name generamos
un enlace que exactamente nos ofrezca eso.
28. Ejemplo de uso: Black List
La Black List muestra todos las tablas y columnas que no permitimos ni obtener ni insertar datos.
Desde esta misma tabla podemos eliminar los registros de la Black List.
30. Ejemplo de uso: Aplicación Cliente - Java
Obtener información en JAVA
• Creación de una clase para la
obtención y gestión de datos.
• Creación de métodos
necesarios para parsear JSONs
y obtener los datos a través de
un enlace dado.
31. Ejemplo de uso: Aplicación Cliente - Java
getJSON
• Obtiene un JSON a través de
un enlace dado
32. Ejemplo de uso: Aplicación Cliente - Java
getDataStringArray
• Hace uso de la librería json-simple-
1.1.1.jar
• Devuelve un array multidimensional
de Strings con la información del
JSON
34. Ejemplo de uso: Aplicación Cliente - Java
Ejemplo 1: Obtención de un dato
35. Ejemplo de uso: Aplicación Cliente - Java
Ejemplo 2: Inserción de datos
36. Ejemplo de uso: Aplicación Cliente - Java
Ejemplo 3: Código de errores [Invalid Parameters]
37. Ejemplo de uso: Aplicación Cliente - Java
Ejemplo 4: Código de errores [Unauthorized]
Campo privada: CountryCode
38. Automatic API REST (alpha/beta)
Actualmente Automatic API REST es un projecto alpha, falta implementar mejoras y
crear una documentación para cada tipo de lenguaje.
39. Líneas Futuras de AAR
• Documentación de cada plataforma
• Creación de librerías para cada plataforma que facilite el uso de AAR
• Implementación de seguridad con OAUTH 2.0
• Dar soporte a consultas complejas, WHERE, INNER, etc.
• Escoger permisos de cada tabla/campo, elegir permisos de cada campo.
• Gestión óptima de URIs
40. Proyecto Open Source
• Automatic API REST es un proyecto
Open Source, todo el mundo es
bienvenido a colaborar.
• Para colaborar, enviar directamente
vuestros pull request o enviar un correo a
alejandro@geekytheory.com