在Drupal 8的每个页面加载中从外部Web服务获取令牌

时间:2018-07-14 16:51:46

标签: drupal twig drupal-8

在Drupal(8)中某个特定内容类型的每个综合浏览量上,我需要从外部网络服务获取一个新的(唯一的)令牌,以便能够通过在javascript嵌入代码中使用此令牌来嵌入某个媒体文件。 此令牌需要从Web服务器(curl)而不是在客户端上调用。

在Drupal中通过在主题文件中添加theme_preprocess_node函数可以正常工作-但由于在Drupal / Twig中进行了缓存,因此只有在清空缓存后,该令牌才会刷新每个综合浏览量。完全禁用缓存不是优选的选择-也不使用要求使用同步调用的AJAX调用。

有人对在Twig模板中获取外部Web服务的价值有想法吗?

1 个答案:

答案 0 :(得分:0)

我通过添加

找到了解决问题的方法
$variables['#cache']['max-age'] = 0;

至theme_pre_process_node。这样会将生成的变量保留在缓存之外。