Verwenden Sie einen Offscreen-Webbereich

Müssen Sie Webseiten laden, Metadaten extrahieren oder Bilder aus den Inhalten von Seiten auf einem Headless-Server generieren? Wenn Sie mit „Ja“ geantwortet haben, dann haben Sie Glück, denn 4D v18 R3 macht es möglich! Jetzt können Sie einen Offscreen-Webbereich mit dem WA Run offscreen area Befehl erstellen.

4D ermöglicht es Ihnen, einen Webbereich im Offscreen-Modus zu verwenden. Das folgende HDI zeigt Ihnen, wie Sie es mit einer JavaScript-API als Google-Diagramm verwenden können:

HDI Offscreen-Webbereich

Der Befehl WA Run offscreen area Befehl erstellt einen Webbereich im Speicher. Sie müssen alle nützlichen Informationen für den Webbereich als Parameter übergeben, wie z.B.:

  • Die zu ladende URL
  • Der Name des Bereichs
  • Die Callback-Methode, die aufgerufen wird, wenn ein Ereignis durch den Webbereich ausgelöst wird

Wenn Sie zum Beispiel den Titel des letzten 4D Blogbeitrags abrufen möchten, müssen Sie die „https://blog.4d.com“ laden 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)

Und verwenden Sie diesen Code in der Callback-Methode, 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

Um das Debuggen mit einem Offscreen-Webbereich zu erleichtern, haben wir einen neuen Befehl hinzugefügt: WA OPEN WEB INSPECTOR. Er öffnet den Webinspektor und ermöglicht es Ihnen zu überprüfen, ob die Seite korrekt geladen wurde oder ob Ihr JavaScript-Code einen Fehler auslöst.

In der Dokumentation können Sie nachlesen, was Sie mit diesen neuen Befehlen im Einzelnen tun können.

Fabrice Mainguené
- Product Owner -Fabrice Mainguené gehört seit November 2016 zum 4D Program Team. Als Product Owner ist er verantwortlich für das Schreiben der User Stories und deren Umsetzung in funktionale Spezifikationen. Seine Aufgabe ist es auch, sicherzustellen, dass die gelieferte Funktionsimplementierung den Kundenanforderungen entspricht.Nach seinem Bachelor-Abschluss in Informatik am CNAM arbeitete Fabrice als Windev-Entwickler bei einem kleinen Software-Verlag. Danach arbeitete er für verschiedene Unternehmen in Industrie und Handel als Windev- und Webentwickler sowie als technischer Berater für neue Funktionen.