Ir al contenido

Capítulo 33: Integración HTTP Básica (Cliente REST)

Cap 33: Integración HTTP Básica (Cliente REST)

Sección titulada «Cap 33: Integración HTTP Básica (Cliente REST)»

Parte XIII - Sección 27 - Nivel: Avanzado

Entramos en la era de la Industria 4.0. Nuestros esquema eléctricos ya no son islas; necesitan conectar con ERPs, sistemas MES, o bases de datos en la nube. El protocolo estándar para esto es HTTP.

En este capítulo, aprenderemos a convertir a EPLAN en un Cliente HTTP capaz de consumir APIs REST.


La clase moderna para esto en .NET es System.Net.Http.HttpClient. Para usarla en scripts de EPLAN, a veces es necesario asegurar que el ensamblado System.Net.Http.dll está accesible, aunque en versiones modernas de EPLAN (basadas en .NET 4.7.2+) suele estarlo por defecto.

Nota: Si tu script falla al compilar, asegúrate de que tienes using System.Net.Http; y añade la referencia al assembly con // #r "System.Net.Http.dll" al inicio del script.


Los scripts de EPLAN son inherentemente síncronos. Si lanzamos una petición HTTP que tarda 10 segundos, EPLAN se congelará 10 segundos. Para evitar complicaciones de hilos (async/await no siempre funciona directo en scripts antiguos), usamos .Result para forzar la espera:

// Bloqueante
var respuesta = client.GetAsync(url).Result;

Para scripts de producción, considera poner un Timeout breve al cliente:

client.Timeout = TimeSpan.FromSeconds(3);

El script 01_ClienteHTTP.cs conecta a una API pública simple que devuelve una frase aleatoria. Esto demuestra el ciclo completo:

  1. Crear cliente.
  2. Configurar cabeceras (User-Agent).
  3. Lanzar GET.
  4. Leer cuerpo de respuesta.

  • EPLAN puede consumir datos de Internet/Intranet.
  • Usa HttpClient con bloqueos síncronos .Result controlados.
  • Maneja siempre try/catch para errores de red.

En el próximo capítulo, haremos lo contrario: Enviar datos (POST) a un servidor para registrar eventos o errores.