ForHosting KIT · Utilidades de desarrollo

Escape de cadena JSON

Say "hello", un salto de línea y world se convierten en Say \"hello\"\nworld: tres escapes, listo para pegar entre comillas dobles sin romper el documento que lo rodea. También devuelve el texto escapado a caracteres normales. Gratis en su navegador.

  • Gratis
  • Funciona en su navegador
  • Sin registro
  • Sus datos no salen de su equipo
Úselo desde WebAPIEmailTelegramApp pronto
Si escribe
Texto
Say "hello" world
Modo de cálculo
Encode
Obtiene
Resultado
Say \"hello\"\nworld
Codificación
json_string
Longitud de entrada
17
Longitud de salida
20

El camino es plenamente determinista: el mismo texto y modo producen siempre el mismo resultado, sin llamadas de red, sales aleatorias ni atajos dependientes de la fecha. Comprobaciones sencillas incluyen codificar una línea con comilla y nueva línea a forma con barra invertida, y decodificar una ruta con barras dobles de vuelta a separadores reales.

Por qué una sola comilla puede romper un documento entero

En un documento de datos, cada texto va entre comillas dobles, y la primera comilla sin escapar lo cierra. Por eso una comilla que forma parte del propio texto se escribe con una barra invertida delante, la barra invertida se duplica porque es la marca de escape, y los caracteres de control, como los saltos de línea y los tabuladores, no pueden aparecer tal cual. En el ejemplo, Say "hello", un salto de línea y world necesitan tres escapes, dos comillas y el salto, de modo que 17 caracteres pasan a ser 20. Pegue el resultado entre sus comillas y el documento queda intacto.

De vuelta a texto normal y los descuidos que detecta

La decodificación hace lo contrario: lee las formas cortas habituales de comilla, barra invertida, barra, retroceso, salto de página, salto de línea, retorno y tabulador, además de la forma con barra invertida, u y cuatro dígitos, y le devuelve los caracteres reales. Una ruta de archivo escrita con barras invertidas dobles vuelve con separadores simples. Si el texto trae una secuencia incompleta, un par con barra invertida no permitido, una comilla suelta o un carácter de control sin escapar, la herramienta se detiene con un aviso en lugar de dejar pasar el error. El mismo texto con la misma opción da siempre el mismo resultado.

¿Qué caracteres se escapan en encode?

Encode reescribe comilla doble, barra invertida, retroceso, avance de página, nueva línea, retorno de carro, tabulación y cualquier otro control en U+0000–U+001F como \uXXXX. Los demás caracteres no cambian.

¿El resultado es determinista?

Sí. El mismo texto y modo producen siempre el mismo resultado, sin red, aleatoriedad ni comportamiento dependiente de la fecha.

¿La herramienta añade las comillas exteriores?

No. Devuelve solo el contenido que va entre las comillas, así que las comillas de apertura y cierre de su documento se quedan como están. Al decodificar, pegue también solo lo que está dentro de ellas.

¿Cómo se escribe un salto de línea dentro de las comillas?

Como una barra invertida seguida de n. El tabulador queda como barra invertida y t, y el retorno como barra invertida y r; los caracteres de control sin forma corta se escriben con barra invertida, u y cuatro dígitos hexadecimales.

¿Por qué se rechaza el texto que quiero decodificar?

Porque contiene algo que no puede aparecer en una cadena escapada válida: una secuencia incompleta, una barra invertida seguida de una letra no permitida, una comilla doble suelta o un carácter de control sin escapar. La herramienta se detiene y lo indica en lugar de adivinar.

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/enc/json-string-escape

¿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/enc/json-string-escape \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Say \"hello\"\\n"}'
{
  "text": "Say \"hello\"\\n"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.json_string_escape",
  "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.

Este escape de cadenas JSON convierte texto plano a la forma escapada que exige un valor de cadena JSON, y revierte el mismo mapeo cuando pega contenido escapado de vuelta a caracteres ordinarios. La codificación reescribe comillas dobles, barras invertidas y caracteres de control para que una carga armada a mano, una plantilla o una línea de registro puedan situarse con seguridad entre comillas JSON sin romper el documento. La decodificación acepta los escapes JSON estándar —comilla, barra invertida, barra opcional, las formas cortas de retroceso, avance de página, nueva línea, retorno y tabulación, y escapes u de cuatro dígitos— y falla de forma explícita ante secuencias incompletas, pares de barra ilegales, comillas dobles crudas en el contenido o controles sin escapar, de modo que los errores tipográficos no lleguen en silencio a producción.

Qué es el escape de cadenas JSON y qué devuelve esta herramienta

Una comilla doble literal debe escribirse como par barra-comilla, una barra invertida literal debe duplicarse, y todo carácter de control en el rango U+0000 a U+001F debe ir como escape corto cuando exista o como escape u de cuatro dígitos en caso contrario. Un valor de cadena JSON se delimita con comillas dobles, y los caracteres que pueden aparecer entre esas comillas están acotados por ECMA-404 y por las reglas habituales de JSON.stringify en todos los lenguajes. Esta página implementa ese conjunto de codificación en la ruta encode y el inverso en decode: la respuesta es solo el contenido de la cadena, sin añadir ni quitar las comillas exteriores de un documento JSON completo. A diferencia de un analizador JSON completo, esta landing no valida objetos, arrays, números ni estructuras anidadas; responde solo al contrato de escape del contenido de cadena. La respuesta JSON siempre incluye result para la cadena transformada, mode que repite encode o decode, encoding fijo a json_string, e input_length más output_length para que las pruebas puedan afirmar tamaños. Encode también informa escapes_applied y decode informa escapes_resolved para confirmar cuántos caracteres especiales o secuencias de escape se reescribieron. No hay omisión silenciosa parcial de una secuencia rota: o cada par con barra es JSON legal o la solicitud falla con invalid_input.

Cómo se leen text y mode y cómo los resultados se mantienen reproducibles

Decode busca secuencias iniciadas por barra: comilla, barra invertida, barra, las cinco formas cortas de control, y u seguido de exactamente cuatro dígitos hexadecimales. El campo preferido del payload es text, con alias input, value, s y payload, de modo que formularios, cadenas de consulta y clientes SDK reutilizan el mismo contrato sin renombrar columnas. Mode por defecto es encode y acepta decode de forma explícita; los alias op, direction y action mapean al mismo conmutador para scripts que ya usan esos nombres, y escape o unescape se aceptan como sinónimos. Encode recorre la cadena por unidades de código UTF-16 y sustituye solo los caracteres que JSON exige escapar, dejando letras, dígitos y Unicode ordinario sin cambio para que el texto legible siga siéndolo. Como la barra invertida se reescribe en el mismo pase de izquierda a derecha que comillas y controles, obtiene un único pase de escape coherente con las reglas de carácter de JSON.stringify para el contenido de cadena. Una barra final incompleta, un escape corto fuera del conjunto JSON, un escape u sin cuatro hexadecimales, una comilla doble cruda o un control sin escapar lanza invalid_input con un mensaje que nombra el problema. El techo de longitud de cien mil caracteres mantiene predecible la memoria del Worker y sigue cubriendo plantillas, cargas de muestra y la mayoría de portapapeles. Combine la ejecución gratuita en el navegador en esta página con la API de pago cuando necesite el mismo mapeo dentro de una canalización automatizada sin reimplementar usted mismo las tablas de escape JSON. Las entradas inválidas devuelven invalid_input y no se cobran, lo que mantiene barata la validación mientras las transformaciones correctas permanecen a un precio fijo por ítem de $0.002.

Dónde encajan el escape y unescape de cadenas JSON en los flujos de desarrollo

Los autores de canalizaciones decodifican exportaciones cargadas de escapes de sistemas heredados para que el código de aplicación trabaje con nuevas líneas y comillas reales en lugar de secuencias literales barra-n. Combínelo con codificación percentual de URL o auxiliares de entidades XML cuando necesite transformaciones de texto más amplias, y con otros extremos de codificación cuando construya un pequeño laboratorio de herramientas gratuitas y deterministas para CI y documentación. Los equipos de frontend y backend codifican títulos y etiquetas dinámicos antes de colocarlos dentro de un campo JSON entre comillas, de modo que una sola comilla, barra invertida o nueva línea no pueda romper el documento circundante. Los ingenieros de calidad generan pares deterministas de encode y decode para pruebas de contrato, de modo que un middleware que afirme soporte de cadenas JSON no pueda cambiar en silencio a una tabla de escape no estándar entre versiones. Los educadores usan la misma herramienta al enseñar la diferencia entre un documento JSON completo, un valor de cadena JSON y el pequeño conjunto de escapes que la especificación permite dentro de ese valor. En esta página el trabajo se ejecuta por completo en su navegador; a través de la API cada consulta correcta cuesta $0.002, la validación fallida no se cobra y nada se almacena tras devolver la respuesta. Esa división —exploración interactiva gratuita y una API de precio idéntica— coincide con el resto del catálogo KIT de nivel A y le permite pasar de una demostración de aula a una canalización automatizada sin cambiar el resultado escapado.

Contenido seguro en campos JSON

Escape títulos, mensajes y fragmentos de usuario para que comillas, barras invertidas y nuevas líneas no rompan un valor de cadena JSON armado a mano o por plantilla.

Limpieza de fixtures y registros

Decodifique escapes de cadena JSON de registros, exportaciones o archivos golden de vuelta a Unicode plano para diffs legibles y código de aplicación.

Pares deterministas para CI

Genere pares reproducibles de encode y decode para pruebas unitarias, comprobaciones de contrato y middleware que deba coincidir con las reglas de cadena de JSON.stringify.

¿Cuánto cuesta el escape de cadenas JSON?

Es gratis en su navegador en esta página. A través de la API una solicitud correcta cuesta $0.002; las entradas inválidas no se cobran.

¿Qué modos se admiten?

mode=encode (predeterminado) convierte texto plano en escapes de cadena JSON. mode=decode devuelve esos escapes a caracteres.

¿Qué ocurre si un escape es incompleto o ilegal?

Decode falla con invalid_input. Se rechazan barras sueltas, letras de escape no JSON, formas \u incorrectas, comillas crudas y controles sin escapar.

Ver la documentación completa del KIT →