Realizar una solicitud HEAD (http.head)
Declaración
código_http, texto_json_cabeceras = http.head(URL [, segundos_espera, cabeceras, URL_NO_ESCAPE ])
Declaración (parámetros con nombre)
Compatible desde 20250625; los parámetros de progreso son compatibles a partir de las versiones posteriores a 20260402
código_http, texto_json_cabeceras = http.head{
url = URL;
timeout = segundos_espera;
headers = cabeceras;
params = parámetros_Query;
progress = función_de_retorno_de_progreso;
progress_interval_ms = intervalo_de_progreso_en_milisegundos;
}
Parámetros
- URL
Tipo texto; dirección URL que se debe solicitar. Este método aplica escape a la URL de forma predeterminada; si no se necesita, consulta la descripción del parámetro URL NO ESCAPE - Segundos de espera
Tipo real, parámetro opcional; tiempo de espera de la solicitud, en segundos; valor predeterminado 10 - Cabeceras
Tipo tabla, parámetro opcional; información de las cabeceras de la solicitud enviada, con la forma{field1 = value1, field2 = value2, ...}; valor predeterminado{} - Parámetros Query
Tipo tabla, parámetro opcional; parámetros Query de la solicitud enviada, con la forma{field1 = value1, field2 = value2, ...}; valor predeterminado{} - Función de retorno de progreso
Tipo función, parámetro opcional, compatible a partir de las versiones posteriores a 20260402. Se llama cuando cambia el progreso de la solicitud; el primer parámetro de la función es la información de progreso actual - Intervalo de la función de retorno de progreso en milisegundos
Tipo entero, parámetro opcional, compatible a partir de las versiones posteriores a 20260402. Controla el intervalo de activación de la función de retorno de progreso, en milisegundos - URL NO ESCAPE
Tipo booleano, parámetro opcional; true solicita directamente sin aplicar escape a la URL y false es el valor predeterminado
Para aplicar un escape personalizado a la URL, consulta el módulolcurl,easy:escapeyeasy:unescape
Valores devueltos
- Código de estado HTTP
Tipo entero; devuelve el código de estado HTTP de esta solicitud; devuelve -1 si se agota el tiempo de espera - Texto JSON de las cabeceras devueltas
Tipo texto o nil; información de las cabeceras en formato JSON devuelta al completar la solicitud; devuelve nil si se agota el tiempo de espera
Descripción
Usa el método HEAD del protocolo HTTP/1.1 para solicitar las cabeceras de recursos de red
El protocolo HEAD normalmente obtiene las mismas cabeceras de respuesta que una solicitud GET, pero no devuelve el contenido del cuerpo real
Esta función puede ceder; antes de que devuelva el control, otros hilos pueden tener la oportunidad de ejecutarse
La función de retorno de progreso recibe una estructura info con la siguiente forma:
{
count_of_bytes_sent = bytes_enviados;
count_of_bytes_expected_to_send = bytes_que_se_espera_enviar;
count_of_bytes_received = bytes_recibidos;
count_of_bytes_expected_to_receive = bytes_que_se_espera_recibir;
}
Ejemplo
local c, h = http.head("https://www.xxtouch.app/测试文本.txt")
if c==200 then -- Si el código de estado devuelto es HTTP_OK
sys.alert(h) -- Escribe la información de las cabeceras solicitadas
end
Nota: el código anterior utiliza la función sys.alert, que no pertenece a este capítulo