Magento 2: Type Error occurred when creating object: Magento\Framework\Locale\Resolver
Столкнулся с ошибкой "Type Error occurred when creating object: Magento\Framework\Locale\Resolver", происходит она из-за того, что..
в файле /vendor/magento/framework/Encryption/Adapter/SodiumChachaIetf.php
метод decrypt возврящает NULL хотя ожидается, что он будет возвращать строку.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
public function decrypt(string $data): string { $nonce = mb_substr($data, 0, SODIUM_CRYPTO_AEAD_CHACHA20POLY1305_IETF_NPUBBYTES, '8bit'); $payload = mb_substr($data, SODIUM_CRYPTO_AEAD_CHACHA20POLY1305_IETF_NPUBBYTES, null, '8bit'); $plainText = sodium_crypto_aead_chacha20poly1305_ietf_decrypt( $payload, $nonce, $nonce,ф $this->key ); return $plainText; // <- тут проблема } |
Чтобы исправить, открываем его в редакторе и делаем приведение типа к строке, в return-е
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
public function decrypt(string $data): string { $nonce = mb_substr($data, 0, SODIUM_CRYPTO_AEAD_CHACHA20POLY1305_IETF_NPUBBYTES, '8bit'); $payload = mb_substr($data, SODIUM_CRYPTO_AEAD_CHACHA20POLY1305_IETF_NPUBBYTES, null, '8bit'); $plainText = sodium_crypto_aead_chacha20poly1305_ietf_decrypt( $payload, $nonce, $nonce,ф $this->key ); return (string) $plainText; // <- добавляем приведение типа к строке } |
Все, можно дальше продолжать работать 🙂
Author: | Tags: /
| Rating:
Leave a Reply