4D 20 R8 ist jetzt verfügbar und bietet eine Reihe neuer 4D Qodly Pro Funktionen, die Ihre Webanwendungen noch leistungsfähiger machen.
Entdecken Sie diese leistungsstarke Plattform – eine robuste, benutzerfreundliche Lösung für die Erstellung von Business-Webanwendungen mit minimalem Programmieraufwand.
4D Qodly Pro für 4D ist in 4D integriert und ermöglicht es Ihnen, bestehende Geschäftslogik, die für Desktop-Anwendungen entwickelt wurde, zu nutzen.
Jetzt ist es an der Zeit, mit 4D 20 R8 zu entdecken, wie Sie HTTP-Request-Handler implementieren, effizient mit Rollen und Berechtigungen arbeiten und dynamische Benutzeroberflächen perfektionieren können.
HTTP-Handler
Vielleicht haben Sie bereits diesen Blog-Beitrag über HTTP-Handler gelesen.
Mit der Einführung von HTTP Request Handlern auf dem 4D HTTP Server können Sie genau definieren, welche Geschäftslogik Sie bei bestimmten URL-Mustern auslösen wollen.
In Bezug auf 4D Qodly Pro sind die Hauptvorteile dieser Funktion folgende
- Ermöglichung einer Weiterleitung auf einer Qodly Seite, was neue Perspektiven zur Erweiterung von 4D Anwendungen im Web eröffnet
- Einrichten einer Navigationsaktion auf einer URL, die von den HTTP Request Handlern abgedeckt wird, so dass Sie die zugehörige Geschäftslogik implementieren können (z.B. um Funktionen zum Herunterladen oder Hochladen von Dateien anzubieten).
Diese Funktion ist mit der Klasse 4D.OutgoingMessage gekoppelt, um eine reibungslose Benutzererfahrung zu gewährleisten.
Dieser Blogbeitrag enthält alle Implementierungsdetails und ein konkretes 4D Qodly Pro Beispiel im HDI.
Um die Verwendung von HTTP Request Handlern in 4D Qodly Pro zu erleichtern, können Sie diese in einer benutzerfreundlichen Oberfläche einrichten. Öffnen Sie dazu im Explorer den Bereich HTTP Handlers .


Möchten Sie diese Art von Funktion?

In der Doku erfahren Sie mehr über HTTP-Handler und wie Sie sie einrichten können!
Rollen und Privilegien
Eine genaue Übersicht über die erlaubten Aktionen für jede Rolle
Vielleicht haben Sie bereits Rollen und Berechtigungen eingerichtet, um Ihre Daten vor böswilligem Zugriff zu schützen.
Zur Erinnerung:
Mit Berechtigungen können Sie steuern, wer in Ihrer Anwendung Operationen wie Erstellen, Löschen, Lesen, Ausführen usw. durchführen darf.
Sie können Rollen definieren, um mehrere Privilegien zusammenzufassen, so dass die Rollen zu den Rollen Ihrer Benutzer in Ihrer Anwendung passen. Wenn sich Ihr Benutzer anmeldet, verwenden Sie die Funktion Session. setPrivilege(role ) , um diesem Benutzer die entsprechenden Berechtigungen zu gewähren.
Auf diese Weise erhalten Sie einen globalen Überblick über alle Aktionen, die für eine bestimmte Rolle(d. h. einen Endbenutzer) und die damit verbundenen Daten zulässig sind.
Verwenden Sie die neue Seite Rollen, um sofort die Rollenberechtigungen zu überprüfen, die für Ihre Datenspeicherressourcen auf der Grundlage der von Ihnen definierten Berechtigungen festgelegt wurden. Dies ist nützlich für Sicherheitsüberprüfungen und Audits!

Ansicht und Bereinigung von Berechtigungen für nicht vorhandene Ressourcen
Während der Entwicklung Ihrer Anwendung ist es ziemlich sicher, dass Sie den Namen einiger Datenklassen, Attribute oder Funktionen ändern und einige von ihnen löschen werden.
Die Privilegien für diese Ressourcen werden dann unwirksam sein. Es ist wichtig, die Rollen und Berechtigungen auf dem neuesten Stand zu halten.
Privilegien, die sich auf nicht existierende Ressourcen beziehen, haben eine besondere Darstellung, um Ihre Aufmerksamkeit zu erregen.
Mit der Schaltfläche “ Löschen“ können Sie auch alle diese Rechte löschen.

Handhabung von Zuständen für authentifizierte/unauthentifizierte Benutzer
Der Bedingungseditor wurde verbessert, wenn Privilegien involviert sind.
Wenn Sie eine Authentifizierung durchführen, wird die Sitzung während dieser Authentifizierungsphase dank der Funktion Session. setPrivileges() mit einigen Berechtigungen verknüpft.
Wenn der Benutzer authentifiziert ist, enthält die Sitzung also die mit der Rolle des Benutzers verbundenen Rechte (siehe den obigen Abschnitt über eine genaue Übersicht über die zulässigen Aktionen für jede Rolle).
Wenn der Benutzer nicht authentifiziert ist, enthält die Sitzung nur das Gastrecht.
Bei der Handhabung von Zuständen in 4D Qodly Pro können Sie Zustände für authentifizierte und nicht-authentifizierte Benutzer aktivieren.
Wählen Sie dazu den Privileg-Typ für die Bedingung und verwenden Sie die Operatorenhas at least one privilege oder has no privilege.
hat mindestens ein Privileg bedeutet, dass die Sitzung andere Privilegien als die des Gastes (authentifizierter Benutzer) enthält
has no privilege bedeutet, dass die Sitzung nur das Gastrecht enthält (nicht authentifizierter Benutzer)

Sie können dann mit einer solchen dynamischen Benutzeroberfläche umgehen:

Sortieren einer großen Menge von Daten in einer Datentabelle
In einer Datentabelle können Sie ein Element auswählen und die Daten später sortieren, indem Sie auf eine Spaltenüberschrift klicken. Aber was kommt aus Ihrem ausgewählten Element heraus?
Nach der Sortieraktionstehen Ihnen nun zwei Optionen zur Verfügung:
– an den Anfang der Datentabelle blättern (und das ausgewählte Element behalten)
– den Fokus auf dem ausgewählten Element behalten

das Kontrollkästchen mit drei Zuständen
Ein Kontrollkästchen muss an eine boolesche Datenquelle gebunden sein. Diese Datenquelle kann True oder False sein, sie kann aber auch Null sein (z.B. ein boolesches Attribut ist Null in einer neu erstellten Entität).
Wenn dieser Null-Wert für Ihr Unternehmen relevant ist, können Sie diesen Wert nun in einem dreistufigen Kontrollkästchen wiedergeben.

Tooltip für Passworteingabe ein-/ausblenden
Dem Endbenutzer die Möglichkeit zu geben, ein Passwort während der Eingabe ein- oder auszublenden, ist eine wichtige Webfunktion. Dank der neuen EigenschaftPasswort anzeigen können Sie dies nun tun.
Beachten Sie, dass Sie auch die Platzierung des Symbols wählen können (rechts oder links).

SCHLUSSFOLGERUNG
Warten Sie nicht länger, um die neuen Funktionen von 4D Qodly Pro auszuprobieren und Ihre Webanwendung benutzerfreundlich und leistungsstark zu gestalten!
Comments are not currently available for this post.