簡體   English   中英

在Azure中創建容器時出錯

[英]Error when creating container in Azure

我今天已經使用此頁面上的說明安裝了Azure客戶端庫https://docs.microsoft.com/zh-cn/azure/storage/blobs/storage-php-how-to-use-blobs#create-a-php-應用

但我越來越錯誤。

400:失敗:

代號:400

值:HTTP標頭之一的值格式不正確。

詳細信息(如果有):InvalidHeaderValue HTTP標頭之一的值格式不正確。 RequestId:f0046f48-001e-0046-22ab-2823fb000000時間:2017-09-08T14:06:55.1682373Zx-ms-version2012-02-12。

我的代碼如下:

require_once 'vendor/autoload.php';

use WindowsAzure\Common\ServicesBuilder;
use MicrosoftAzure\Storage\Blob\Models\CreateContainerOptions;
use MicrosoftAzure\Storage\Blob\Models\PublicAccessType;
use MicrosoftAzure\Storage\Common\ServiceException;

$connectionString = "DefaultEndpointsProtocol=http;AccountName=MyAccountName;AccountKey=4cxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==";

$blobRestProxy = ServicesBuilder::getInstance()->createBlobService($connectionString);

//create container
$createContainerOptions = new CreateContainerOptions();

// private to the account owner.
$createContainerOptions->setPublicAccess(PublicAccessType::CONTAINER_AND_BLOBS);

// Set container metadata.
$createContainerOptions->addMetaData("category", "my first category data");

try    {
    // Create container.
    $blobRestProxy->createContainer("test", $createContainerOptions);
}
catch(ServiceException $e){
    // Handle exception based on error codes and messages.
    // Error codes and messages are here:
    // http://msdn.microsoft.com/library/azure/dd179439.aspx
    $code = $e->getCode();
    $error_message = $e->getMessage();
    echo "Erro in create container <br><br>";
    echo $code.": ".$error_message."<br />";
    //print_r($e);
}

在上面的代碼中,我收到“找不到類”錯誤,因此更新了代碼,如下所示:

use WindowsAzure\Common\ServicesBuilder;
use WindowsAzure\Blob\Models\CreateContainerOptions;
use WindowsAzure\Blob\Models\PublicAccessType;
use WindowsAzure\Common\ServiceException;

經過上述代碼更改后,“類未找到”錯誤得到解決,我也檢查了連接字符串是否正常工作,但遇到了錯誤,這在我的問題開始時有所描述。

謝謝 :)

您的代碼看起來不錯。 我可以使用適用於PHPAzure SDK v.0.4.2版本重現該錯誤。 通過將SDK升級到最新版本( v0.5.5 )解決了問題

{
    "require": {
        "microsoft/windowsazure": "^0.5.5"
    }
}

Azure SDK版本存在問題,因此您可以從此博客中下載SDK v0.5.5,也可以在PHP 5.4上運行

http://mytechdevelopment.blogspot.com/2018/01/azure-sdk-055-for-php-54-or-igher.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM