VENDAS: 1-800-867-1389

Atualizar Mensagem (REST API)

Atualizado: setembro de 2011

Essa operação foi introduzida com a versão 2011-08-18 da API do serviço Fila. A operação Update Message atualiza o tempo limite de visibilidade de uma mensagem. Você também pode usar essa operação para atualizar o conteúdo de uma mensagem. Uma mensagem deve estar em um formato que pode ser incluído em uma solicitação XML com codificação UTF-8, e a mensagem codificada pode ter até 64 KB.

A solicitação Update Message pode ser criada da seguinte maneira. HTTPS é recomendado. Substitua myaccount pelo nome da conta de armazenamento, e myqueue pelo nome da fila:

 

Método URI de solicitação Versão de HTTP

PUT

https://myaccount.queue.core.windows.net/myqueue/messages/messageid?popreceipt=<string-value>&visibilitytimeout=<int-seconds>

HTTP/1.1

Há suporte para essa operação no SDK 1.6 e em versões posteriores.

Ao fazer uma solicitação no serviço de armazenamento emulado, especifique o nome de host do emulador e a porta do serviço Fila como 127.0.0.1:10001, seguido pelo nome da conta de armazenamento emulado:

 

Método URI de solicitação Versão de HTTP

PUT

http://127.0.0.1:10001/devstoreaccount1/myqueue/messages/messageid?popreceipt=<string-value>&visibilitytimeout=<int-seconds>

HTTP/1.1

Para obter mais informações, consulte About Development Storage.

Os seguintes parâmetros podem ser especificados no URI de solicitação.

 

Parameter Descrição

popreceipt

Obrigatório. Especifica o valor válido de recebimento de mensagem pop-up retornado de uma chamada anterior para a operação Receber mensagens ou Atualizar Mensagem (REST API).

visibilitytimeout

Obrigatório. Especifica o novo valor de tempo limite de visibilidade, em segundos, em relação à hora do servidor. O novo valor deve ser maior ou igual a 0 e não pode ser maior que sete dias. O tempo limite de visibilidade de uma mensagem não pode ser definido como um valor posterior à data de expiração. É possível atualizar uma mensagem até que seja excluída ou expirar.

timeout

Opcional. O parâmetro timeout é expresso em segundos. Para obter mais informações, consulte Definindo tempos limite para operações de serviço Fila.

A tabela a seguir descreve os cabeçalhos de solicitação obrigatórios e opcionais.

 

Cabeçalho de solicitação Descrição

Authorization

Obrigatório. Especifica o esquema de autenticação, o nome da conta e a assinatura. Para obter mais informações, consulte Autenticação federada para os Serviços de Armazenamento do Azure.

Date or x-ms-date

Obrigatório. Especifica o Tempo Universal Coordenado (UTC) para a solicitação. Para obter mais informações, consulte Autenticação federada para os Serviços de Armazenamento do Azure.

x-ms-version

Requer a versão 2011-08-18 ou mais recente. Especifica a versão da operação a ser usada para esta solicitação. Para obter mais informações, consulte Controle de versão para os Serviços de Armazenamento do Azure.

x-ms-client-request-id

Opcional. Fornece um valor opaco, gerado pelo cliente, com um limite de caractere de 1 KB que é registrado nos logs analíticos quando o log analítico de armazenamento está habilitado. É altamente recomendável usar este cabeçalho para correlacionar atividades do cliente com solicitações recebidas pelo servidor. Para obter mais informações, consulte Sobre o registro em log da Análise de Armazenamento e Log do Windows Azure: Usando logs para rastrear solicitações de armazenamento.

O corpo da solicitação contém os dados da mensagem no seguinte formato XML. Observe que o conteúdo da mensagem deve estar em um formato que pode ser codificado com UTF-8.

<QueueMessage>
    <MessageText>message-content</MessageText>
</QueueMessage>

A resposta inclui um código de status HTTP e um conjunto de cabeçalhos de resposta.

Uma operação bem-sucedida retorna o código de status 204 (Sem conteúdo).

Para obter informações sobre códigos de status, consulte Status e códigos de erro.

A resposta para esta operação inclui os cabeçalhos a seguir. A resposta também pode incluir cabeçalhos padrão HTTP adicionais. Todos os cabeçalhos padrão obedecem a especificação de protocolo HTTP/1.1.

 

Cabeçalho de solicitação Descrição

x-ms-request-id

Esse cabeçalho identifica a solicitação que foi feita de forma exclusiva e pode ser usado para solucionar problemas na solicitação. Para obter mais informações, consulte Solucionando problemas de operações de API.

x-ms-version

Indica a versão do serviço Fila usado para executar a solicitação. Esse cabeçalho é retornado para solicitações feitas na versão 2009-09-19 e mais recente.

Date

Um valor de data/hora UTC gerado pelo serviço que indica a hora em que a resposta foi iniciada.

x-ms-popreceipt

O recebimento de mensagem pop-up de mensagem da fila.

x-ms-time-next-visible

Um valor de data/hora UTC que demonstra quando a mensagem se tornará visível na fila.

Essa operação poderá ser executada pelo proprietário da conta e por qualquer pessoa com uma assinatura de acesso compartilhado que tenha permissão para executar essa operação.

A solicitação a seguir prorroga a visibilidade de uma mensagem da fila em 30 segundos e atualiza seu conteúdo.

PUT https://myaccount.queue.core.windows.net/myqueue/messages/663d89aa-d1d9-42a2-9a6a-fcf822a97d2c?popreceipt=AgAAAAEAAAApAAAAGIw6Q29bzAE%3d&visibilitytimeout=30&timeout=30 HTTP/1.1

A solicitação é enviada com os seguintes cabeçalhos:

x-ms-version: 2011-08-18
x-ms-date: Mon, 29 Aug 2011 17:17:21 GMT
Authorization: SharedKey myaccount:batcrWZ35InGCZeTUFWMdIQiOZPCW7UEyeGdDOg7WW4=
Content-Length: 75

A solicitação é enviada com o seguinte corpo XML:

<QueueMessage>
    <MessageText>new-message-content</MessageText>
</QueueMessage>

Depois que a solicitação tiver sido enviada, a resposta a seguir será retornada:

HTTP/1.1 204 No Content
Content-Length: 0
Server: Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: df34a7dd-3cbe-4206-a586-d6de3cf225a7
x-ms-version: 2011-08-18
x-ms-popreceipt: AwAAAAIAAAApAAAAINtMQ29bzAEBAAAA
x-ms-time-next-visible: Mon, 29 Aug 2011 17:17:51 GMT
Date: Mon, 29 Aug 2011 17:17:21 GMT

Uma operação Update Message falhará se a mensagem especificada não existir na fila, ou se o recebimento de mensagem pop-up especificado não corresponder à mensagem.

Um recebimento de mensagem pop-up será retornado pela operação Get Messages ou Update Message. Os recebimentos de mensagem pop-up permanecem válidos até que um dos seguintes eventos ocorra:

  1. A mensagem expirou.

  2. A mensagem foi excluída usando o último recebimento de mensagem pop-up de Get Messages ou de Update Message.

  3. O tempo de invisibilidade expirou, e a mensagem foi removida da fila por uma solicitação Get Messages. Quando o tempo de invisibilidade expira, a mensagem se torna visível novamente. Se for recuperada por outra solicitação Get Messages, o recebimento de mensagem pop-up retornado poderá ser usado para excluir ou atualizar a mensagem.

  4. A mensagem foi atualizada com um novo tempo limite da visibilidade. Quando a mensagem for atualizada, um novo recebimento de mensagem pop-up será retornado.

A operação Update Message pode ser usada para estender, de forma contínua, a invisibilidade de uma mensagem na fila. Essa funcionalidade poderá ser útil se você quiser que uma função de trabalho "conceda" uma mensagem da fila. Por exemplo, se uma função de trabalho chamar Receber mensagens e confirmar que é necessário mais tempo para processar uma mensagem, ela poderá estender, de forma contínua, a invisibilidade da mensagem até que seja processada. Se ocorrer uma falha na função de trabalho durante o processamento, a mensagem se tornará visível novamente, e outra função de trabalho poderá acessá-la.

Isso foi útil para você?
(1500 caracteres restantes)
Agradecemos os seus comentários
Mostrar:
© 2014 Microsoft