无法使用Windows Azure SDK for PHP查询RoleEnvironment

时间:2012-09-11 07:14:10

标签: php azure sdk azure-role-environment

我遇到了使用最新版本(撰写本文时)PHP SDK from Github从Windows Azure运行时获取数据的问题。以下是我在其中一个托管服务上运行的测试:

<?php

include 'WindowsAzure/WindowsAzure.php';
use \WindowsAzure\ServiceRuntime\RoleEnvironment;
use \WindowsAzure\ServiceRuntime\Internal\RoleEnvironmentNotAvailableException;

try {
    echo RoleEnvironment::getDeploymentId();
}
catch (RoleEnvironmentNotAvailableException $Exception) {
    die('Failed to find deployment id');
}

始终抛出RoleEnvironmentNotAvailableException。查看源代码,它似乎尝试通过命名管道(\。\ pipe \ WindowsAzureRuntime)发送命令。我是否需要在ServiceConfiguration.csdef / cscfg中指定一些内容才能访问此命名管道?

欢迎任何建议!

2 个答案:

答案 0 :(得分:3)

MS EMEA开发人员支持确认当前的SDK不支持此功能。他们向上面的jonnu提出了类似的解决方法 - 使用之前SDK的功能进行角色环境/配置设置。

答案 1 :(得分:-1)

ServiceRuntime API仅在Cloud上运行,因此如果此代码段在本地计算机上运行,​​它将抛出异常,如您所指出的那样。此外,如果要调试ServiceRuntime代码,则需要将服务部署到WA,然后使用remote desktop connection访问云计算机并调试代码。