Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PHP Extension) Azure Create Storage AccountDemonstrates how to create an Azure storage account.
<?php // The version number (9_5_0) should match version of the Chilkat extension used, omitting the micro-version number. // For example, if using Chilkat v9.5.0.48, then include as shown here: include("chilkat_9_5_0.php"); // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. $http = new CkHttp(); // Load an OAuth2 access token previously fetched by this example: Get Azure OAuth2 Access Token $jsonToken = new CkJsonObject(); $success = $jsonToken->LoadFile('qa_data/tokens/azureToken.json'); // Assuming success.. $http->put_AuthToken($jsonToken->stringOf('access_token')); print 'AuthToken: ' . $http->authToken() . "\n"; $http->put_Accept('application/json'); // Create the following JSON: // { // "sku": { // "name": "Standard_GRS" // }, // "kind": "StorageV2", // "location": "eastus2", // } // Use this online tool to generate the code from sample JSON: // Generate Code to Create JSON $jsonRequestBody = new CkJsonObject(); $jsonRequestBody->UpdateString('sku.name','Standard_GRS'); $jsonRequestBody->UpdateString('kind','StorageV2'); $jsonRequestBody->UpdateString('location','eastus2'); $url = 'https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}?api-version=2018-02-01'; // resp is a CkHttpResponse $resp = $http->PText('PUT',$url,$jsonRequestBody->emit(),'utf-8','application/json',false,false); if ($http->get_LastMethodSuccess() != true) { print $http->lastErrorText() . "\n"; exit; } print 'Response Status Code: ' . $resp->get_StatusCode() . "\n"; $json = new CkJsonObject(); $json->Load($resp->bodyStr()); $json->put_EmitCompact(false); print $json->emit() . "\n"; if ($resp->get_StatusCode() >= 300) { print 'Failed.' . "\n"; exit; } // Successful requests to create a new account return a 202 status code with an empty response body. The storage account is created asynchronously. // If the account already exists or is being provisioned, the request response has a 200 return code with the configuration of the existing storage account in the response body. if ($resp->get_StatusCode() == 202) { print 'Azure-AsyncOperation: ' . $resp->getHeaderField('Azure-AsyncOperation') . "\n"; } if ($resp->get_StatusCode() == 200) { // Parse a response like this: // { // "sku": { // "name": "Standard_GRS", // "tier": "Standard" // }, // "kind": "StorageV2", // "id": "/subscriptions/6c42643b-ebef-45f0-b917-b3583b84a57f/resourceGroups/gChilkat/providers/Microsoft.Storage/storageAccounts/chilkatsoftware", // "name": "chilkatsoftware", // "type": "Microsoft.Storage/storageAccounts", // "location": "eastus2", // "tags": {}, // "properties": { // "networkAcls": { // "bypass": "AzureServices", // "virtualNetworkRules": [ // ], // "ipRules": [ // ], // "defaultAction": "Allow" // }, // "supportsHttpsTrafficOnly": false, // "encryption": { // "services": { // "file": { // "enabled": true, // "lastEnabledTime": "2019-05-14T22:18:33.2246670Z" // }, // "blob": { // "enabled": true, // "lastEnabledTime": "2019-05-14T22:18:33.2246670Z" // } // }, // "keySource": "Microsoft.Storage" // }, // "accessTier": "Hot", // "provisioningState": "Succeeded", // // "creationTime": "2019-05-14T22:18:33.1309165Z", // "primaryEndpoints": { // "dfs": "https://chilkatsoftware.dfs.core.windows.net/", // "web": "https://chilkatsoftware.z20.web.core.windows.net/", // "blob": "https://chilkatsoftware.blob.core.windows.net/", // "queue": "https://chilkatsoftware.queue.core.windows.net/", // "table": "https://chilkatsoftware.table.core.windows.net/", // "file": "https://chilkatsoftware.file.core.windows.net/" // }, // "primaryLocation": "eastus2", // "statusOfPrimary": "available", // "secondaryLocation": "centralus", // "statusOfSecondary": "available" // } // } // Use this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON $skuName = $json->stringOf('sku.name'); $skuTier = $json->stringOf('sku.tier'); $kind = $json->stringOf('kind'); $id = $json->stringOf('id'); $name = $json->stringOf('name'); $v_type = $json->stringOf('type'); $location = $json->stringOf('location'); $propertiesNetworkAclsBypass = $json->stringOf('properties.networkAcls.bypass'); $propertiesNetworkAclsDefaultAction = $json->stringOf('properties.networkAcls.defaultAction'); $propertiesSupportsHttpsTrafficOnly = $json->BoolOf('properties.supportsHttpsTrafficOnly'); $propertiesEncryptionServicesFileEnabled = $json->BoolOf('properties.encryption.services.file.enabled'); $propertiesEncryptionServicesFileLastEnabledTime = $json->stringOf('properties.encryption.services.file.lastEnabledTime'); $propertiesEncryptionServicesBlobEnabled = $json->BoolOf('properties.encryption.services.blob.enabled'); $propertiesEncryptionServicesBlobLastEnabledTime = $json->stringOf('properties.encryption.services.blob.lastEnabledTime'); $propertiesEncryptionKeySource = $json->stringOf('properties.encryption.keySource'); $propertiesAccessTier = $json->stringOf('properties.accessTier'); $propertiesProvisioningState = $json->stringOf('properties.provisioningState'); $propertiesCreationTime = $json->stringOf('properties.creationTime'); $propertiesPrimaryEndpointsDfs = $json->stringOf('properties.primaryEndpoints.dfs'); $propertiesPrimaryEndpointsWeb = $json->stringOf('properties.primaryEndpoints.web'); $propertiesPrimaryEndpointsBlob = $json->stringOf('properties.primaryEndpoints.blob'); $propertiesPrimaryEndpointsQueue = $json->stringOf('properties.primaryEndpoints.queue'); $propertiesPrimaryEndpointsTable = $json->stringOf('properties.primaryEndpoints.table'); $propertiesPrimaryEndpointsFile = $json->stringOf('properties.primaryEndpoints.file'); $propertiesPrimaryLocation = $json->stringOf('properties.primaryLocation'); $propertiesStatusOfPrimary = $json->stringOf('properties.statusOfPrimary'); $propertiesSecondaryLocation = $json->stringOf('properties.secondaryLocation'); $propertiesStatusOfSecondary = $json->stringOf('properties.statusOfSecondary'); } print 'Success.' . "\n"; ?> |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.