¿Necesitas cargar páginas web, extraer metadatos o generar imágenes a partir del contenido de las páginas de un servidor headless? Si su respuesta es «sí», entonces está de suerte porque 4D v18 R3 lo hace posible. Ahora puede crear un área web fuera de la pantalla con el comando WA Run offscreen area comando.
4D le permite utilizar un área web en modo offscreen. El IDH que aparece a continuación le muestra cómo utilizarlo con una API de JavaScript como un gráfico de Google:
HDI área web fuera de pantalla
El comando WA Run offscreen area crea un área web en la memoria. Necesita pasar toda la información útil para el área web en parámetro, como por ejemplo
- La URL a cargar
- El nombre del área
- El método de callback llamado cuando un evento es lanzado por el área web
Por ejemplo, si quiere obtener el título de la última entrada del blog 4D, necesita cargar la «https://blog.4d.com» URL:
$params:=New object
// url of the html file with the js function to use
$params .url:="https://blog.4d.com"
// Add a callback method called on event
$params .onEvent:=Formula(GetBlogTitle )
// create offscreen web area according to $params
$title :=WA Run offscreen area($params)
Y utilizar este código en el método de devolución de llamada, GetBlogTitle:
If (FORM Event.code=On End URL Loading)
$js :="document.getElementsByTagName('h2')[1].getElementsByTagName('a')[0].innerHTML"
This .result:=WA Evaluate JavaScript(*;This.area;$js)
End if
Para facilitar la depuración con un área web fuera de pantalla, hemos añadido un nuevo comando: WA OPEN WEB INSPECTOR. Abre el inspector web y permite verificar si la página se ha cargado correctamente o si su código JavaScript arroja un error.
Puedes consultar la documentación para ver en detalle lo que puedes hacer con estos nuevos comandos.