Pega respuestas de API, tokens y claves sin preocuparte: nada sale de esta página.
Diez herramientas para desarrolladores en una página
Son las pequeñas conversiones que surgen todos los días: ordenar una respuesta de API, convertir una exportación en una hoja de cálculo, comprobar un token, generar ID de prueba. Cada pestaña funciona por separado y conserva su entrada mientras cambias, y cada pestaña tiene su propia dirección, como #jwt o #regex, para que puedas guardar como favorita la que más uses.
Nada de lo que pegas se sube. La página no tiene servidor detrás y su política de seguridad bloquea toda conexión de red, así que los tokens, las claves y los datos de clientes se quedan en esta pestaña del navegador.
Formateador y validador de JSON
Pega JSON para revisarlo y darle formato con 2 espacios, 4 espacios o tabulaciones, o minifícalo en una sola línea. Si el JSON no es válido, obtienes la línea y la columna del problema y una explicación sencilla, por ejemplo una coma final, unas comillas que faltan, comillas simples o un comentario, que JSON no permite.
- Los números se quedan exactamente como están escritos. Muchos formateadores pasan el JSON por JavaScript, que redondea 12345678901234567890 a 12345678901234567000 y convierte 1.50 en 1.5. Este conserva cada número carácter por carácter.
- Se conserva el orden de las claves, incluidas las claves que parecen números, a menos que elijas Ordenar claves.
- Las claves duplicadas se indican con sus números de línea, porque la mayoría de los programas conservan en silencio solo la última.
- La vista de árbol muestra la estructura como carpetas que puedes abrir y cerrar, lo que ayuda con respuestas grandes.
JSON a CSV y CSV a JSON
JSON a CSV toma una lista de objetos y crea una fila por objeto. Los objetos anidados se aplanan en columnas con rutas de puntos, de modo que {"stock": {"web": 12}} se convierte en una columna llamada stock.web. Las listas se convierten en una columna por elemento, o se quedan como JSON en una sola celda, y las listas y objetos vacíos dejan sus celdas vacías. Las celdas que contienen el separador, comillas o saltos de línea se entrecomillan de la forma estándar, con las comillas duplicadas, para que Excel, Google Sheets y Numbers las lean bien.
CSV a JSON detecta si las celdas están separadas por comas, punto y coma, tabulaciones o barras verticales, maneja celdas entrecomilladas con saltos de línea dentro y convierte de nuevo las columnas con rutas de puntos en objetos anidados. Los números, true, false y las celdas vacías se convierten en valores JSON reales. Los números con ceros a la izquierda, como códigos postales y números de teléfono, se quedan como texto, igual que los números enteros demasiado grandes para guardarse con exactitud.
JSON a YAML y YAML a JSON
La salida YAML entrecomilla todo valor que un lector de YAML podría interpretar mal: palabras como yes, no, on y off, números de versión como 1.10, números con ceros a la izquierda, fechas, texto que empieza con un carácter especial o contiene dos puntos seguidos de un espacio. El texto de varias líneas se escribe como un bloque legible con |.
El lector de YAML sigue YAML 1.2, la versión actual, y admite lo que usan los archivos de configuración reales: mapeos y listas anidados, colecciones en línea [ ] y { }, texto entrecomillado con escapes, bloques | y >, comentarios, anclas y alias, claves de combinación << y varios documentos separados por ---. No admite claves complejas que empiecen con ?, y las etiquetas personalizadas como !Ref se descartan mientras se conservan sus valores. Los errores muestran la línea y la columna.
Codificación Base64, URL y HTML
- Base64 codifica el texto como UTF-8, así que los acentos, los emojis y otros alfabetos sobreviven al viaje de ida y vuelta. La decodificación acepta Base64 estándar y seguro para URL, con o sin relleno y saltos de línea. Si los bytes decodificados no son texto, como una imagen, ves qué tipo de archivo es y puedes descargarlo. Un archivo de hasta 10 MB se puede convertir en una URL de datos para HTML o CSS.
- La codificación de URL tiene dos alcances. Una parte codifica todo lo que tiene significado en una dirección, lo que es correcto para un único valor de consulta. Dirección completa conserva caracteres como
:,/,?y&y solo codifica espacios y otros caracteres no seguros. Una dirección completa se divide en sus partes, con cada parámetro de consulta decodificado. - Las entidades HTML convierten
<,>,&y las comillas en texto seguro para HTML, y la decodificación entiende todas las entidades con nombre, comoé, además de las numéricas.
Convertidor de marca de tiempo Unix
Una marca de tiempo Unix cuenta los segundos desde el 1 de enero de 1970 a medianoche UTC. Muchos sistemas, incluido JavaScript, cuentan milisegundos, y algunos usan microsegundos o nanosegundos. Pega un número y su unidad se detecta por el número de dígitos, o fíjala tú. Obtienes la fecha en UTC y en cualquier zona horaria, ISO 8601 con el desfase, el formato de fecha de HTTP y correo, el día del año, la semana ISO y cuánto hace o cuánto falta. También funciona al revés: escribe una fecha y una hora para obtener la marca de tiempo.
Generador de UUID
Crea hasta 1000 UUID a la vez. La versión 4 es totalmente aleatoria y es la opción segura por defecto para la mayoría de los usos. La versión 7, definida en la RFC 9562, empieza con una marca de tiempo en milisegundos, así que los ID creados más tarde se ordenan después de los anteriores, lo que viene bien para claves de bases de datos. Los UUID creados en un mismo lote conservan su orden incluso dentro del mismo milisegundo. Pega cualquier UUID en Inspeccionar para ver su versión, su variante y, en las versiones 1, 6 y 7, cuándo se creó.
Generador de hash
Obtén el hash MD5, SHA-1, SHA-256, SHA-384 y SHA-512 de cualquier texto o archivo a la vez. Los hashes SHA usan el Web Crypto integrado en tu navegador, y MD5 lo calcula esta página. Pega una suma de comprobación publicada en Comparar con para verificar que una descarga llegó intacta: el hash que coincide se marca sea cual sea el algoritmo. El texto se procesa como UTF-8, igual que sha256sum o openssl sobre un archivo con ese texto y sin salto de línea final.
Generador de contraseñas y frases de contraseña
Las contraseñas se crean con el generador de números aleatorios criptográfico de tu navegador, sin sesgo entre caracteres. Elige la longitud y los tipos de caracteres, y deja fuera los caracteres fáciles de confundir al leer una contraseña en voz alta o copiarla de un papel. Se incluye al menos un carácter de cada tipo que elijas.
Una frase de contraseña une palabras aleatorias de una lista de unas 1400 palabras inglesas cortas y comunes. Seis palabras aleatorias son más fáciles de escribir y recordar que una maraña de símbolos y siguen siendo muy difíciles de adivinar. La fortaleza mostrada es la entropía en bits, que supone que un atacante sabe exactamente cómo se creó la contraseña, y el tiempo es lo que tardaría en probarse la mitad de las posibilidades a diez mil millones de intentos por segundo.
Decodificador de JWT
Un JSON Web Token tiene tres partes: un encabezado, una carga de claims y una firma. Pega un token para leer el encabezado y la carga, con las horas exp, nbf e iat mostradas como fechas y una nota clara cuando el token ha caducado o aún no es válido.
Decodificar no es verificar. Cualquiera puede crear un token con cualquier carga, así que no te fíes de lo que dice un token hasta comprobar su firma. Para tokens firmados con HS256, HS384 o HS512, introduce el secreto compartido para comprobar aquí la firma con Web Crypto. Los tokens firmados con RS256, ES256 y otros métodos de clave pública necesitan la clave pública del emisor, y esta página no los comprueba.
Probador de regex
Escribe una expresión regular de JavaScript y un texto para ver resaltada cada coincidencia, con una tabla de posiciones, grupos numerados y grupos con nombre, y una vista previa en vivo de un reemplazo. Los patrones se ejecutan en un worker en segundo plano con un límite de tiempo, así que un patrón que nunca terminaría, como (a+)+$ en una línea larga de aes, se detiene al cabo de un segundo y medio y la página sigue funcionando.
Privacidad
No hay cuenta, ni analítica, ni servidor detrás de esta página, y la página no tiene permiso para hacer ninguna solicitud de red. Tus entradas y ajustes de las pestañas de JSON, CSV, YAML, codificación y regex se guardan en el almacenamiento de este navegador para que sigan aquí la próxima vez, salvo los textos muy largos. Los JWT, los secretos, las entradas de hash y las contraseñas generadas nunca se guardan. Pulsa Borrar en una pestaña para eliminar lo que contiene.
Preguntas
¿Es seguro pegar aquí un token de producción o una respuesta de una API?
Todo se ejecuta en esta pestaña y no se envía nada a ninguna parte, así que los datos no salen de tu dispositivo. Como con cualquier secreto, cierra la pestaña cuando termines si usas una computadora compartida.
¿Por qué mis booleanos de YAML salen como texto?
YAML 1.2 solo lee true y false como booleanos. Las herramientas más antiguas de YAML 1.1 también leen así yes, no, on y off, por lo que, cuando aparece uno de ellos, ves una nota. Pon el valor entre comillas en tu YAML para que la intención quede clara en todas las herramientas.
¿Puedo verificar tokens RS256?
Todavía no. El decodificador los lee, pero la verificación necesita la clave pública del emisor, que esta página no admite.
¿Qué sintaxis de regex se usa?
La de JavaScript, tal como viene integrada en tu navegador, con lookbehind, grupos con nombre y escapes de propiedades Unicode con la bandera u. La mayoría de los patrones se comportan igual en otros lenguajes, pero algunas funciones difieren, como los cuantificadores posesivos, que JavaScript no tiene.