@@ -408,7 +408,7 @@ And here is the controller::
408
408
// src/Controller/DiscoverController.php
409
409
namespace App\Controller;
410
410
411
- use Lcobucci\JWT\Builder ;
411
+ use Lcobucci\JWT\Configuration ;
412
412
use Lcobucci\JWT\Signer\Hmac\Sha256;
413
413
use Lcobucci\JWT\Signer\Key;
414
414
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
@@ -423,10 +423,13 @@ And here is the controller::
423
423
$hubUrl = $this->getParameter('mercure.default_hub');
424
424
$this->addLink($request, new Link('mercure', $hubUrl));
425
425
426
- $token = (new Builder())
427
- // set other appropriate JWT claims, such as an expiration date
426
+ $key = Key\InMemory::plainText('mercure_secret_key'); // don't forget to set this parameter! Test value: !ChangeMe!
427
+ $configuration = Configuration::forSymmetricSigner(new Sha256(), $key);
428
+
429
+ $token = $configuration->builder()
428
430
->withClaim('mercure', ['subscribe' => ["http://example.com/books/1"]]) // can also be a URI template, or *
429
- ->getToken(new Sha256(), new Key($this->getParameter('mercure_secret_key'))); // don't forget to set this parameter! Test value: !ChangeMe!
431
+ ->getToken($configuration->signer(), $configuration->signingKey())
432
+ ->toString();
430
433
431
434
$response = $this->json(['@id' => '/demo/books/1', 'availability' => 'https://schema.org/InStock']);
432
435
$response->headers->set(
0 commit comments