ForHosting KIT · Web: scraping y monitoreo

Compruebe si un método HTTP es seguro o idempotente

Sepa si un método se puede repetir sin sorpresas: put, escrito con espacios, se lee como PUT, no seguro pero idempotente, así que enviarlo dos veces tiene el mismo efecto previsto que enviarlo una. Gratis en su navegador.

  • Gratis
  • Funciona en su navegador
  • Sin registro
  • Sus datos no salen de su equipo
Úselo desde WebAPIEmailTelegramApp pronto

Seguro e idempotente son dos promesas distintas

Un método seguro sirve para obtener información o preguntar qué opciones ofrece un servidor, no para cambiar nada allí. HEAD, OPTIONS y TRACE pertenecen a ese grupo, y todo método seguro es también idempotente. Idempotente es una promesa más amplia: enviar el mismo mensaje varias veces tiene el mismo efecto previsto que enviarlo una sola. PUT y DELETE la cumplen sin ser seguros, porque volver a guardar el mismo contenido o volver a borrar el mismo elemento no añade ningún efecto nuevo.

Cuándo comprobarlo antes de reintentar

La pregunta importa sobre todo cuando se corta la conexión y no se sabe si el servidor recibió el mensaje. Antes de activar los reintentos automáticos para un método, compruébelo aquí: obtendrá el método en mayúsculas, si es seguro, si es idempotente y una etiqueta breve que lo resume. Las mayúsculas y los espacios sobrantes no cuentan, así que put se convierte en PUT. Un error típico es creer que idempotente significa inofensivo: DELETE sí cambia datos, solo que no los cambia dos veces. Los nombres desconocidos o inventados se rechazan en lugar de adivinarse.

Interprete correctamente los reintentos

La idempotencia resulta especialmente útil al decidir si un cliente automatizado puede reintentar una solicitud después de un fallo de conexión. Es posible que el cliente no sepa si el servidor recibió el primer intento; repetir un método idempotente conserva el efecto previsto de la solicitud. Esto no garantiza códigos de estado ni cuerpos de respuesta idénticos.

Por ejemplo, un primer DELETE puede eliminar un recurso y devolver un resultado satisfactorio, mientras que otro DELETE idéntico puede indicar que el recurso ya no existe; aun así, el estado final pretendido es el mismo. PUT se comporta de forma equivalente cuando las solicitudes repetidas mantienen el mismo destino y la misma representación.

Revise el middleware de reintentos

Compruebe un método configurado antes de habilitar reintentos automáticos tras fallos de transporte ambiguos.

¿Por qué DELETE es idempotente si el segundo intento puede devolver otro estado?

La idempotencia se refiere al efecto previsto en el servidor, no a respuestas idénticas. Las solicitudes de eliminación repetidas persiguen el mismo estado final del recurso.

¿Se aceptan nombres de método en minúsculas?

Sí. El comprobador elimina los espacios circundantes y normaliza el nombre proporcionado a mayúsculas antes de clasificarlo.

¿Qué ocurre con los métodos de WebDAV o los métodos personalizados?

Se rechazan como desconocidos. Sus propiedades deben obtenerse de la especificación o del contrato de aplicación que los define.

¿Qué diferencia hay entre un método seguro y uno idempotente?

Un método seguro solo consulta información y no pide ningún cambio en el servidor. Uno idempotente puede cambiar cosas, pero enviarlo dos veces tiene el mismo efecto previsto que enviarlo una. PUT y DELETE son idempotentes sin ser seguros.

¿Qué métodos reconoce?

Los nueve métodos estándar del protocolo web y de la especificación de PATCH, como PUT, PATCH, DELETE, HEAD, OPTIONS y TRACE. Se ignoran las mayúsculas y los espacios alrededor del nombre, de modo que put se lee como PUT.

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/dev2/http-method-idempotent-check

¿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/dev2/http-method-idempotent-check \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"method":"PUT"}'
{
  "method": "PUT"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev2.http_method_idempotent_check",
  "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.

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.

Clasifique un método HTTP estándar mediante las propiedades de seguridad e idempotencia definidas por la semántica HTTP. Introduzca un método como GET, POST, PUT, PATCH o DELETE y obtenga el nombre normalizado, dos resultados booleanos independientes y una clasificación conjunta concisa. El comprobador reconoce los nueve métodos definidos en las especificaciones principales de semántica HTTP y PATCH, ignora mayúsculas, minúsculas y espacios circundantes, y rechaza los nombres desconocidos en lugar de atribuir propiedades a métodos de extensión.

Distinga seguridad de idempotencia

La seguridad y la idempotencia expresan garantías diferentes. Un método seguro está destinado a recuperar información o comunicar opciones, no a solicitar un cambio de estado en el servidor de origen. La idempotencia abarca más casos: significa que varias solicitudes idénticas tienen el mismo efecto previsto en el servidor que una sola solicitud. PUT y DELETE son idempotentes aunque no sean seguros, porque reemplazar repetidamente una representación por la misma representación, o solicitar varias veces la eliminación del mismo recurso, no introduce un efecto previsto nuevo en cada ocasión. GET, HEAD, OPTIONS y TRACE son seguros. La semántica HTTP también establece que todo método seguro es idempotente, por lo que esos métodos reciben la clasificación conjunta `safe_and_idempotent`. La respuesta presenta `safe` e `idempotent` por separado para que el código de políticas no tenga que deducir una propiedad a partir de una etiqueta. También devuelve el campo `classification`, útil para mostrar, registrar o bifurcar decisiones. Estas propiedades describen la semántica estandarizada de la solicitud, no garantizan que una implementación concreta carezca de errores o efectos secundarios incidentales.

Interprete correctamente los reintentos

POST y PATCH se clasifican como métodos que no son seguros ni idempotentes en sus definiciones generales. Una API concreta puede diseñar una operación POST o PATCH que admita reintentos, quizá mediante una clave de idempotencia o una solicitud condicional, pero ese contrato de aplicación no altera la propiedad estandarizada predeterminada del método. Use este resultado como referencia del protocolo y aplique después cualquier garantía adicional documentada expresamente por la API que consume.

Valide el método antes de aplicar una política

Inferir las propiedades de un método de extensión a partir de su nombre podría autorizar un reintento peligroso o impedir una operación válida. Si su sistema utiliza un método de extensión, consulte la especificación que lo registra o define y trátelo mediante una política explícita. El algoritmo no realiza solicitudes de red ni observa servidores, rutas, cachés, proxies o cuerpos de solicitud reales. El comprobador acepta los nombres estándar CONNECT, DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT y TRACE. La entrada se recorta y se convierte a mayúsculas, por lo que valores como ` get ` y `patch` se normalizan sin cambiar su significado. Cualquier otro valor genera un error `invalid_input`. Este comportamiento estricto es importante porque los tokens de método HTTP son extensibles: WebDAV y otros protocolos definen métodos adicionales, y las API privadas pueden introducir tokens propios. Es determinista y sirve para linters, comprobaciones de documentación de API, configuración de middleware de reintentos y herramientas didácticas en el navegador. El ejecutor del navegador y el controlador de la API comparten la misma lógica; una solicitud API usa el precio base publicado de $0.002.

Valide documentación de API

Compare los métodos elegidos para cada endpoint con la documentación que declara una operación segura o idempotente.

Enseñe semántica HTTP

Muestre por separado las propiedades de seguridad e idempotencia de métodos habituales mediante una consulta determinista.

¿Todos los métodos seguros son también idempotentes?

Sí. La semántica HTTP define los métodos seguros como idempotentes, de modo que GET, HEAD, OPTIONS y TRACE reúnen ambas propiedades.

¿PATCH es idempotente?

PATCH no es idempotente de forma predeterminada. Una API puede definir una operación PATCH que admita reintentos, pero esa es una garantía específica de la aplicación.

Ver la documentación completa del KIT →