У меня проблема с облачными сервисами CKEditor.Я пытаюсь интегрировать плагин ckeditor easyimage в drupal8.Когда я использую маркер конечной точки разработки, который мне предоставляет облако CKEditor, плагин работает так, как ожидалось.Изображения загружаются и все работает нормально.Но когда я использую пользовательский токен jwt, возникает ошибка.Когда я пытаюсь загрузить изображение, я получаю 401 ошибку в ответ.Я не понимаю, где ошибка.
Ошибка: {_csError: true, type: "HttpError", code: "unauthorized", message: "Invalid token", data: {},…}
CKEditor odcumentation: https://ckeditor.com/docs/cs/latest/guides/token-endpoints/php.html
Мой код сгенерирован jwt:
</p>
<?php
namespace Drupal\ckeditor_easyimage\Controller;
use Drupal\Core\Controller\ControllerBase;
use Firebase\JWT\JWT;
use Symfony\Component\HttpFoundation\Request;
use Zend\Diactoros\Response\JsonResponse;
/**
* Class EasyImageEndPoint.
*
* @package Drupal\ckeditor_easyimage\Controller
*/
class EasyImageEndPoint extends ControllerBase {
/**
* Creates authorization token for CKEditor cloud services.
*
* @param \Symfony\Component\HttpFoundation\Request $request
* Sample comment.
*
* @return \Zend\Diactoros\Response\JsonResponse
* Return JWT generated token.
*/
public function token(Request $request) {
$secretKey = "cdDhwW2lFTDOC1g8ScYuHCDFpBbAynfgdDlk3gfcoejMtp1Q4EWA2gRBNiXp";
$environmentId = "PVbOTQcbLUGR6lgqTk2u";
$payload = [
"iss" => $environmentId,
"iat" => time(),
];
$jwt = JWT::encode($payload, $secretKey);
return new JsonResponse(print($jwt));
}
}