Когда я загружаю файл в хранилище ФАЙЛОВ Azure, я получаю следующую ошибку:
in
E:\WAMP\www\myweb\_protected\vendor\microsoft\windowsazure\WindowsAzure\Common\Internal\Http\Url.php at line 74 – WindowsAzure\Common\Internal\Validate::isTrue(false, 'Provided URL is invalid.')
E:\WAMP\www\allure\_protected\vendor\microsoft\windowsazure\WindowsAzure\Common\Internal\RestProxy.php at line 122 – WindowsAzure\Common\Internal\Http\Url::__construct('https://cG9rYXJuYXZpb282mGQ=.blo...')
Настройки, которые у меня есть в моем конфигурационном файле:
'filesystem' => [
'class' => 'creocoder\flysystem\AzureFilesystem',
'accountName' => 'azure-accname',
'accountKey' => 'some-long-key-A==',
'container' => 'azure-container',
],
и, наконец, код, который я вызываю для сохранения файла:
if($file = \yii\web\UploadedFile::getInstance($this, 'attachment'))
{
$stream = fopen($file->tempName, 'r+');
Yii::$app->filesystem->writeStream($file->name, $stream);
}
Некоторая дополнительная информация, которая может быть полезна
Согласно исходному коду на https://github.com/creocoder/yii2-flysystem/blob/master/src/AzureFilesystem.php#L62, кажется, что пакет зашифровывает строку информации о хранилище в base64
закодировать, прежде чем объединить их в строку подключения. Что делает странно выглядящий формат URL в вашем сообщении об ошибке 'https://cG9rYXJuYXZpb282mGQ=.blo...'
,
Пожалуйста, попробуйте установить данные учетной записи в следующем формате:
...
'accountName' => base64_decode('azure-accname'),
'accountKey' => base64_decode('some-long-key-A=='),
...
Любое дальнейшее беспокойство, пожалуйста, не стесняйтесь, дайте мне знать.
Других решений пока нет …