HTTP - AWS IoT Core

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

HTTP

A ação HTTPS (http) envia dados de uma MQTT mensagem para um aplicativo ou serviço da Web.

Requisitos

Esta ação de regra tem os seguintes requisitos:

Parâmetros

Ao criar uma AWS IoT regra com essa ação, você deve especificar as seguintes informações:

url

O HTTPS endpoint para o qual a mensagem é enviada usando o HTTP POST método. Se você usar um endereço IP no lugar de um nome de host, ele deverá ser um IPv4 endereço. IPv6endereços não são suportados.

Compatível com modelos de substituição: Sim

confirmationUrl

(Opcional) Se especificado, AWS IoT usa a confirmação URL para criar um destino de regra de tópico correspondente. Você deve habilitar o destino da regra de tópico antes de usá-la em uma HTTP ação. Para obter mais informações, consulte Trabalhando com destinos de regras de HTTP tópicos. Se você usar modelos de substituição, deverá criar manualmente destinos de regra de tópico antes que a ação http possa ser usada. confirmationUrl Deve ser um prefixo de url.

A relação entre url e confirmationUrl é descrita pelo seguinte:

  • Se url estiver codificado e não confirmationUrl for fornecido, tratamos implicitamente o url campo como o. confirmationUrl AWS IoT cria um destino de regra de tópico paraurl.

  • Se url e confirmationUrl estiverem codificados, url deve começar com. confirmationUrl AWS IoT cria um destino de regra de tópico paraconfirmationUrl.

  • Se url contiver um modelo de substituição, você deverá especificar confirmationUrl e url deverá começar com confirmationUrl. Se confirmationUrl contiver modelos de substituição, você deverá criar manualmente destinos de regra de tópico antes que a ação http possa ser usada. Se confirmationUrl não contiver modelos de substituição, AWS IoT cria um destino de regra de tópico paraconfirmationUrl.

Compatível com modelos de substituição: Sim

headers

(Opcional) A lista de cabeçalhos a serem incluídos nas HTTP solicitações para o endpoint. Cada cabeçalho deve conter as seguintes informações:

key

A chave do cabeçalho.

Compatível com modelos de substituição: Não

value

O valor do cabeçalho.

Compatível com modelos de substituição: Sim

nota

O tipo de conteúdo padrão é application/json quando a carga está no formato. JSON Caso contrário, é application/octet-stream. Você pode substituí-lo especificando o tipo de conteúdo exato no cabeçalho com o tipo de conteúdo da chave (sem distinção entre maiúsculas e minúsculas).

auth

(Opcional) A autenticação usada pelo mecanismo de regras para se conectar ao endpoint URL especificado no url argumento. Atualmente, o Signature versão 4 é o único tipo de autenticação suportado. Para obter mais informações, consulte HTTPAutorização.

Compatível com modelos de substituição: Não

Exemplos

O JSON exemplo a seguir define uma AWS IoT regra com uma HTTP ação.

{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "http": { "url": "https://www.example.com/subpath", "confirmationUrl": "https://www.example.com", "headers": [ { "key": "static_header_key", "value": "static_header_value" }, { "key": "substitutable_header_key", "value": "${value_from_payload}" } ] } } ] } }

HTTPlógica de repetição de ação

O mecanismo de AWS IoT regras repete a HTTP ação de acordo com estas regras:

  • O mecanismo de regras tenta enviar uma mensagem pelo menos uma vez.

  • O mecanismo de regras tenta novamente no máximo duas vezes. O número máximo de tentativas é três.

  • O mecanismo de regras não fará uma nova tentativa se:

    • A tentativa anterior tiver fornecido uma resposta maior do que 16.384 bytes.

    • O serviço web ou aplicativo downstream fecha a TCP conexão após a tentativa.

    • O tempo total para concluir uma solicitação com repetições tiver excedido o limite de tempo limite da solicitação.

    • A solicitação retorna um código de HTTP status diferente de 429, 500-599.

nota

Custos padrão de transferência de dados se aplicam a novas tentativas.

Consulte também