Экспорт (0) Печать
Развернуть все

Шаг 5. Отправка сообщения в очередь

Обновлено: Сентябрь 2014 г.

Это пятая из девяти задач, требуемых для создания очереди REST и приложения публикации и подписки на основе Служебная шина.

На этом этапе нужно добавить метод, который использует команду HTTP POST на основе REST для отправки сообщения в очередь, созданную на предыдущем шаге.

  1. Вставьте следующий код непосредственно после кода CreateQueue(), добавленного на шаге 4:

    // Sends a message to the "queueName" queue, given the name, the value to enqueue, and the SWT token
    // Uses an HTTP POST request.
    private static void SendMessage(string queueName, string body)
    {
        string fullAddress = baseAddress + queueName + "/messages" + "?timeout=60&api-version=2013-08 ";
        Console.WriteLine("\nSending message {0} - to address {1}", body, fullAddress);
        WebClient webClient = new WebClient();
        webClient.Headers[HttpRequestHeader.Authorization] = token;
    
        webClient.UploadData(fullAddress, "POST", Encoding.UTF8.GetBytes(body));
    }
    
    
  2. Стандартные свойства сообщения, передаваемого через посредника, помещаются в заголовок HTTP BrokerProperties. Свойства посредника должны быть сериализованы в формате JSON. Чтобы указать для TimeToLive значение 30 секунд и добавить метку "M1" для сообщения, добавьте следующий код сразу же перед вызовом webClient.UploadData(), показанным в предыдущем фрагменте кода:

    // Add brokered message properties “TimeToLive” and “Label”.
    webClient.Headers.Add("BrokerProperties", "{ \"TimeToLive\":30, \"Label\":\"M1\"}");
    

    Обратите внимание, что свойства сообщения, передаваемого через посредника, добавлены и будут добавляться в будущем. Таким образом, запрос отправки должен содержать версию API, которая поддерживает все свойства сообщения, входящие в состав запроса. Если указанная версия не поддерживает какое-то свойство сообщения, это свойство игнорируется.

  3. Пользовательские свойства определяются как набор пар "ключ-значение". Каждое настраиваемое свойство хранится в собственном заголовке TPPT. Чтобы добавить настраиваемые свойства "Priority" и "Customer", добавьте следующий код сразу же перед вызовом webClient.UploadData(), показанным в предыдущем фрагменте кода:

    // Add custom properties “Priority” and “Customer”.
    webClient.Headers.Add("Priority", "High");
    webClient.Headers.Add("Customer", "12345");
    

Корпорация Майкрософт проводит интернет-опрос, чтобы выяснить ваше мнение о веб-сайте MSDN. Если вы желаете принять участие в этом интернет-опросе, он будет отображен при закрытии веб-сайта MSDN.

Вы хотите принять участие?
Показ:
© 2014 Microsoft