Blog ComercialWeb - São Paulo - SP
E-mail: [email protected]
Atualizado: 07/10/2025

Consumindo APIs REST em ASP Clássico (GET/POST, headers e timeouts)

Consumindo APIs REST em ASP Clássico

Integrações com APIs REST são comuns em projetos ASP Clássico. A classe MSXML2.ServerXMLHTTP permite realizar requisições HTTP de forma simples e configurar headers, autenticação e timeouts.

Exemplo de requisição GET (JSON)

<!DOCTYPE html>
<html lang="pt-BR">
<head>
 <meta charset="utf-8">
 <title>GET em API</title>
</head>
<body>
 <%
 On Error Resume Next
 Dim http, url
 Set http = Server.CreateObject("MSXML2.ServerXMLHTTP.6.0")
 url = "https://api.exemplo.com/v1/itens"
 http.open "GET", url, False
 http.setRequestHeader "Accept", "application/json"
 http.setTimeouts 3000, 3000, 5000, 5000 ' connect, send, receive, resolve
 http.send
 If Err.Number = 0 Then
 If http.status = 200 Then
 Response.Write(http.responseText)
 Else
 Response.Write("Erro: " & http.status & " - " & http.statusText)
 End If
 Else
 Response.Write("Falha de rede: " & Err.Description)
 End If
 On Error GoTo 0
 %>
</body>
</html>

Dica: para parse de JSON, utilize uma biblioteca de JSON para VBScript (por exemplo, aspjson) ou um componente COM. Evite fazer parse manual com string replace.

Exemplo de POST com Authorization Bearer

<!DOCTYPE html>
<html lang="pt-BR">
<head>
 <meta charset="utf-8">
 <title>POST em API</title>
</head>
<body>
 <%
 Dim http, url, payload, token
 Set http = Server.CreateObject("MSXML2.ServerXMLHTTP.6.0")
 url = "https://api.exemplo.com/v1/itens"
 payload = "{""nome"":""Teste""}"
 token = "SEU_TOKEN_AQUI"
 http.open "POST", url, False
 http.setRequestHeader "Content-Type", "application/json"
 http.setRequestHeader "Authorization", "Bearer " & token
 http.setTimeouts 3000, 3000, 5000, 5000
 http.send payload
 If http.status >= 200 And http.status < 300 Then
 Response.Write(http.responseText)
 Else
 Response.Write("Erro: " & http.status & " - " & http.statusText)
 End If
 %>
</body>
</html>

Boas práticas: valide códigos HTTP, trate timeouts e retries, registre logs (status, latência) e oculte segredos (tokens) fora do código-fonte.

Perguntas frequentes

Como enviar header Authorization Bearer?
Use http.setRequestHeader("Authorization", "Bearer SEU_TOKEN"). Armazene o token fora do código (variáveis de ambiente/arquivos protegidos).
Como configurar timeouts?
Defina http.setTimeouts connect, send, receive, resolve (em ms). Ex.: http.setTimeouts 3000,3000,5000,5000.
Como tratar erros de rede?
Verifique http.status, envolva com On Error Resume Next e teste Err.Number. Logue e aplique retry apenas quando apropriado.
Fonte: Redação ComercialWeb


Mais Lidos

Ferramentas úteis

Precisa gerar senhas, validar CPF/CNPJ ou criar QR Code? Acesse nossos Geradores e Validadores Online.