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:
-
Você deve confirmar e ativar os HTTPS endpoints antes que o mecanismo de regras possa usá-los. Para obter mais informações, consulte Trabalhando com destinos de regras de HTTP tópicos.
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 deurl
.A relação entre
url
econfirmationUrl
é descrita pelo seguinte:-
Se
url
estiver codificado e nãoconfirmationUrl
for fornecido, tratamos implicitamente ourl
campo como o.confirmationUrl
AWS IoT cria um destino de regra de tópico paraurl
. -
Se
url
econfirmationUrl
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á especificarconfirmationUrl
eurl
deverá começar comconfirmationUrl
. SeconfirmationUrl
contiver modelos de substituição, você deverá criar manualmente destinos de regra de tópico antes que a açãohttp
possa ser usada. SeconfirmationUrl
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
Consulte também
-
Encaminhe dados diretamente AWS IoT Core para seus serviços da Web
na Internet das Coisas no AWS blog