Drupal verfügt über spezielle Funktionen, die bei der Kommunikation mit einem Webdienst und der Verarbeitung von JSON-Eingaben hilfreich sein können.
Drupal 7 hat folgende Funktionen:
Mit diesen Funktionen können Sie Ihr eigenes benutzerdefiniertes Modul schreiben, um Anforderungen an eine Site zu stellen, die einen Webdienst implementiert.
Wenn es einige Einschränkungen hinsichtlich der Anzahl der Anforderungen gibt, die an den Webserver gesendet werden können, können Sie die Drupal-Funktionen verwenden, um das vom Webserver erhaltene Ergebnis zwischenzuspeichern:
Um festzustellen, dass Drupal mehr als einen Cache-Bin unterstützt und Module bei Bedarf ihre eigenen Cache-Bins verwenden können.
Drupal unterstützt auch Cache-Elemente, die beim aufeinanderfolgenden Cache-Swipe automatisch entfernt werden (siehe Beschreibung für die Konstante CACHE_TEMPORARY ). Durch die Implementierung von hook_flush_caches () ermöglichen die Module den Administratorbenutzern, den vom Modul verwendeten Cache zu bereinigen, wenn auf der Seite "Leistung" auf die Schaltfläche "Löschen" geklickt wird oder wenn ein Modul drupal_flush_all_caches () aufruft .
In Drupal 7 werden Cache-Daten für häufig verwendete Daten einer statischen Variablen zugeordnet, die mit drupal_static () behandelt wird . Wenn die Daten bei der Ausgabe derselben Seite sehr häufig verwendet werden, wird ein Code verwendet, der dem folgenden ähnlich ist:
// Use the advanced drupal_static() pattern, since this is called very often.
static $drupal_static_fast;
if (!isset($drupal_static_fast)) {
$drupal_static_fast['implementations'] = &drupal_static(__FUNCTION__);
}
$implementations = &$drupal_static_fast['implementations'];
// …
// Fetch implementations from cache.
if (empty($implementations)) {
$implementations = cache_get('module_implements', 'cache_bootstrap');
if ($implementations === FALSE) {
$implementations = array();
}
else {
$implementations = $implementations->data;
}
}
Der Code ist Teil von module_implements () .