【问题标题】:Error using PHP in Azure Service Bus?在 Azure 服务总线中使用 PHP 时出错?
【发布时间】:2018-09-03 21:00:35
【问题描述】:

我正在尝试使用 PHP 连接到 Microsoft Azure 中的服务总线队列,使用 Azure 指南中的以下代码:

<?php
    require_once 'vendor/autoload.php';
    use MicrosoftAzure\Storage\Queue\QueueRestProxy;
    use MicrosoftAzure\Storage\Common\Exceptions\ServiceException;
    use MicrosoftAzure\Storage\Queue\Models\CreateMessageOptions;
    $connectionString = "DefaultEndpointsProtocol=https;AccountName="name";AccountKey=key";
    // Create queue REST proxy.
    $queueClient = QueueRestProxy::createQueueService($connectionString);
    try{
        // Create message.
        $builder = new ServicesBuilder();
        $queueClient->createMessage("cmps297r1", "Hello World!");
    }
    catch(ServiceException $e){
        // Handle exception based on error codes and messages.
        // Error codes and messages are here:
        // http://msdn.microsoft.com/library/azure/dd179446.aspx
        $code = $e->getCode();
        $error_message = $e->getMessage();
        echo $code.": ".$error_message."<br />";
    }
?>

但是,当我运行它时,我得到了这个错误:

可捕获的致命错误:传递给 MicrosoftAzure\Storage\Common\Internal\ServiceRestProxy::__construct() 的参数 4 必须是 MicrosoftAzure\Storage\Common\Internal\Serialization\ISerializer 的实例,给定数组,在 /Applications/ 中调用XAMPP/xamppfiles/htdocs/297R/vendor/microsoft/azure-storage/src/Queue/QueueRestProxy.php 在第 110 行并在 /Applications/XAMPP/xamppfiles/htdocs/297R/vendor/microsoft/azure-storage/src/ 中定义第 77 行的 Common/Internal/ServiceRestProxy.php

【问题讨论】:

  • 你能发布完整的源代码吗?从您的代码中,我看不到您是否已经创建了队列。请注意,下面的代码属于 Azure 存储队列,而不是服务总线队列。

标签: php azure azureservicebus


【解决方案1】:

您粘贴的代码对我来说看起来不错(除了您没有包含 ServicesBuilder 类的 use 语句,这会导致“找不到类”错误)。

正如@Thuan Ng 提到的,上面的代码属于 Azure 存储队列,而不是服务总线队列。如果您使用的是 Azure 服务总线,则需要参考此文档 How to use Service Bus queues with PHP

【讨论】:

    【解决方案2】:

    我知道这是一个旧帖子,但您正在尝试创建存储队列而不是服务总线队列

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-04
      • 1970-01-01
      • 2021-06-06
      • 1970-01-01
      • 2017-12-07
      相关资源
      最近更新 更多