ForHosting KIT · Web: scraping y monitoreo

Analice Accept-Language y ordene las preferencias regionales

Accept-Language parece una cabecera sencilla, pero interpretarla bien exige algo más que separar texto por comas.

● BetaGratis · en su navegador
Úselo desde WebAPIEmailTelegramApp pronto

Cada intervalo lingüístico puede incluir un valor de calidad, los elementos con el mismo peso deben conservar su orden original y las etiquetas mal formadas deben rechazarse antes de negociar contenido. Este analizador convierte una cabecera en una lista predecible de preferencias regionales. Normaliza las mayúsculas habituales de idioma, escritura y región, conserva los comodines, valida la calidad y devuelve los resultados de mayor a menor preferencia para enrutamiento, pruebas, registros o selección regional.

Convierta la cabecera en preferencias explícitas

Una cabecera Accept-Language expresa varias opciones en muy poco texto. Un navegador puede enviar primero una variante regional, después el idioma general y al final un comodín. Interpretarla directamente en cada ruta favorece lógica duplicada y criterios distintos ante casos límite. Este analizador genera un arreglo de preferencias donde cada registro contiene una configuración regional y un valor numérico de calidad. Cuando no se indica calidad, asigna el valor estándar 1. Ordena de mayor a menor calidad y conserva la posición original cuando dos pesos coinciden, pues esa posición es la única señal restante de preferencia. También normaliza la escritura para facilitar comparaciones: idiomas en minúsculas, regiones de dos letras en mayúsculas y escrituras de cuatro letras con inicial mayúscula. El asterisco permanece intacto para que su aplicación lo reconozca como alternativa general y no como una región concreta.

Rechace pronto entradas ambiguas o incorrectas

La cabecera procede normalmente de un cliente y, por tanto, cruza un límite de confianza. Corregir errores en silencio puede convertir una errata en una elección inesperada, así que el analizador rechaza la entrada en vez de adivinar. Cada intervalo debe empezar por un subtag alfabético y puede continuar con subtags alfanuméricos separados por guiones. No admite guiones bajos, espacios internos, subtags vacíos ni puntuación. El único comodín válido es un asterisco como intervalo completo. El parámetro de calidad debe usar q y un valor entre 0 y 1 con un máximo de tres decimales; valores superiores, negativos, parámetros desconocidos o puntos y coma repetidos provocan un error. También se rechazan elementos vacíos entre comas. El tamaño máximo declarado mantiene acotado el procesamiento. Así, los fallos aparecen en el límite de la API y una cabecera parcialmente válida no selecciona contenido que el cliente no pidió.

Use el resultado para negociar la configuración regional

La salida ordenada sirve como entrada limpia para la política de coincidencia de su aplicación. Recorra las preferencias y compárelas con las traducciones disponibles. Puede buscar primero una coincidencia regional exacta, después reducir fr-CA al idioma base y, por último, aplicar el comodín o el valor predeterminado del producto. El analizador no impone esa política: las regiones admitidas, las reglas de reserva y el tratamiento de calidad cero dependen de cada aplicación. Separar análisis y selección permite probar y reutilizar el comportamiento en puertas de enlace, páginas renderizadas en servidor, API y procesos analíticos. También ayuda a investigar por qué una persona recibió un idioma incorrecto, ya que el registro puede guardar la lista estructurada en lugar de una cabecera opaca. En automatizaciones, cada solicitud cuesta $0.002. La versión del navegador ejecuta localmente la misma lógica determinista para inspeccionar cabeceras sin enviarlas fuera.

Elija contenido localizado

Convierta la cabecera del navegador en candidatos ordenados antes de compararlos con las regiones que admite su sitio.

Pruebe clientes y proxies

Compruebe si un navegador, SDK o puerta de enlace envía los intervalos y pesos lingüísticos esperados.

Normalice registros de solicitudes

Guarde preferencias estructuradas para buscar y comparar de forma uniforme incidencias de enrutamiento lingüístico.

¿Qué devuelve?

El resultado contiene un arreglo de preferencias ordenado por calidad descendente. Cada elemento incluye una configuración regional normalizada y un valor numérico de calidad.

¿Qué ocurre si se omite q?

El elemento recibe una calidad de 1, que representa la preferencia estándar máxima.

¿Se reordenan los elementos con igual calidad?

No. Los elementos con la misma calidad conservan su orden relativo original.

¿El analizador elige una de mis regiones admitidas?

No. Analiza y ordena la cabecera; su aplicación define las coincidencias exactas, las alternativas y la región predeterminada.

¿Qué valores incorrectos provocan un error?

Por ejemplo, etiquetas con guiones bajos o subtags vacíos, elementos en blanco, parámetros desconocidos y calidades fuera de 0 a 1 o con más de tres decimales.

¿Cuánto cuesta una solicitud de API?

Cada solicitud de API cuesta $0.002. La herramienta determinista también puede ejecutarse localmente en esta página.

Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.

POSThttps://api.kit.forhosting.com/web/accept-language-parse

¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.

curl -X POST https://api.kit.forhosting.com/web/accept-language-parse \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"en-US,en;q=0.9,fr-CA;q=0.7,*;q=0.1"}'
{
  "text": "en-US,en;q=0.9,fr-CA;q=0.7,*;q=0.1"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "web.accept_language_parse",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

max_chars8192
HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

Ver la documentación completa del KIT →