diff --git a/core/modules/toolbar/toolbar.module b/core/modules/toolbar/toolbar.module
index dbbca14..5dc1a5d 100644
--- a/core/modules/toolbar/toolbar.module
+++ b/core/modules/toolbar/toolbar.module
@@ -441,7 +441,7 @@ function toolbar_toolbar() {
   // add that JSONP script. We add it as an external script, because it's a
   // Drupal path, not a file available via a stream wrapper.
   // @see toolbar_subtrees_jsonp()
-  $menu['toolbar_administration']['#attached']['js'][url('toolbar/subtrees/' . _toolbar_get_subtree_hash())] = array('type' => 'external');
+  $menu['toolbar_administration']['#attached']['js'][url('toolbar/subtrees')] = array('type' => 'external');
 
   // The administration element has a link that is themed to correspond to
   // a toolbar tray. The tray contains the full administrative menu of the site.
@@ -624,20 +624,3 @@ function toolbar_library_info() {
 
   return $libraries;
 }
-
-/**
- * Returns the hash of the per-user rendered toolbar subtrees.
- */
-function _toolbar_get_subtree_hash() {
-  global $user;
-  $cid = $user->id() . ':' . language(Language::TYPE_INTERFACE)->id;
-  if ($cache = cache('toolbar')->get($cid)) {
-    $hash = $cache->data;
-  }
-  else {
-    $subtrees = toolbar_get_rendered_subtrees();
-    $hash = Crypt::hashBase64(serialize($subtrees));
-    cache('toolbar')->set($cid, $hash);
-  }
-  return $hash;
-}
diff --git a/core/modules/toolbar/toolbar.routing.yml b/core/modules/toolbar/toolbar.routing.yml
index 448ea99..02112ce 100644
--- a/core/modules/toolbar/toolbar.routing.yml
+++ b/core/modules/toolbar/toolbar.routing.yml
@@ -1,5 +1,5 @@
 toolbar_subtrees:
-  pattern: '/toolbar/subtrees/{hash}'
+  pattern: '/toolbar/subtrees'
   defaults:
     _controller: '\Drupal\toolbar\Routing\ToolbarController::subtreesJsonp'
   requirements:
