Giter VIP home page Giter VIP logo

curso_usando_api's Introduction

Aprende sobre APIs

En este tutorial, aprender谩s sobre las APIs, c贸mo crear una con Flask y consumirla con JavaScript en pocas lineas de c贸digo.

驴Qu茅 son las APIs?

Las APIs (Interfaz de Programaci贸n de Aplicaciones) son como puentes que permiten que diferentes aplicaciones se comuniquen entre s铆 y compartan informaci贸n.

驴Para qu茅 pueden servir las APIs?

Las APIs son herramientas poderosas que permiten a las aplicaciones:

  • Integrar funcionalidades de servicios externos en su propia aplicaci贸n. Automatizar procesos y tareas mediante la comunicaci贸n entre diferentes sistemas. Acceder y manipular datos de servicios web, como redes sociales, bases de datos, y m谩s.

  • Construir aplicaciones modulares y escalables al separar la l贸gica de negocio de la interfaz de usuario. Fomentar la colaboraci贸n y la interoperabilidad entre aplicaciones y plataformas.

Ejemplos de uso de APIs

Algunos ejemplos comunes de uso de APIs incluyen:

  • Integrar el inicio de sesi贸n de una aplicaci贸n con Google o Facebook. Mostrar datos meteorol贸gicos en una aplicaci贸n utilizando la API de un servicio meteorol贸gico.
  • Obtener informaci贸n sobre pel铆culas o libros utilizando APIs como OMDB o Google Books. Acceder a datos de redes sociales, como tweets o publicaciones de Facebook, a trav茅s de las APIs de Twitter o Facebook.

Creaci贸n de una API con Flask

Instalaci贸n de Flask Antes de comenzar, aseg煤rate de tener Flask instalado en tu sistema. Puedes instalarlo utilizando pip:

bash pip install flask flask_cors

Creaci贸n del Servidor API con Flask

Utilizaremos Flask para crear el servidor para nuestra API.

from flask import Flask, jsonify
from flask_cors import CORS, cross_origin

app = Flask(__name__)
CORS(app)

@app.route('/api')
def hello_world():
    return jsonify({"message":"Hola desde la API de Python"})

if __name__ == '__main__':
    app.run(debug=True)

Luego, corremos el servidor en la terminal:

bash python3 server.py

Consumiendo la API con JavaScript

Con Fetch, podemos enviar una petici贸n a la URL de la API.

const $api = document.getElementById("api"); //Recuperamos el elemento html
const url = "http://localhost:5000/api"; //URL de API
const options = {
  //Necesario para una correcta conexi贸n
  method: "GET", // Tipo de petici贸n
  headers: {
    // Encabezados
    "Content-Type": "application/json",
    "Access-Control-Allow-Origin": "*",
  },
};
fetch(url, options) // Realizando Petici贸n
  .then((response) => response.json())
  .then((json) => ($api.textContent = JSON.stringify(json)))
  .catch((err) => console.error("Error:", err));

Si la API responde la solicitud, nos devolver谩 un json que vamos a mostrarlo como texto en el elemento con ID api, solo con fines pr谩cticos, pero podr铆amos hacer un sin fin de cosas con ellos.

Consideraciones sobre CORS

Es importante tener en cuenta el problema de CORS (Cross-Origin Resource Sharing) al consumir APIs desde un origen diferente al de la API. Pero...

驴Qu茅 es CORS?

CORS (Cross-Origin Resource Sharing) es una regla de seguridad en los navegadores web que decide si permitir o bloquear solicitudes entre diferentes sitios web. Ayuda a prevenir que p谩ginas web maliciosas accedan a tus datos personales cuando navegas por internet.

Capturas de pantalla

Vista de c贸digo Python

Vista de c贸digo Javascript dentro de un HTML

Vista previa sin realizar petici贸n

Vista previa luego de la petici贸n


TODO:

  • Subir imagenes
  • Crear API
  • Uso real de API
  • Screenshots de uso real de API

curso_usando_api's People

Contributors

braiidev avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    馃枛 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 馃搳馃搱馃帀

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google 鉂わ笍 Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.