EDITAR Hay cierta confusión sobre lo que estoy almacenando. Estoy creando una aplicación web de fragmentos de código en Express.js y Mongodb. No estoy almacenando código para ejecutarlo más tarde, lo estoy almacenando y luego lo muestro en texto sin formato en la aplicación web, y permitiré que el usuario copie el código para usarlo por sí mismo. Tengo instalado un módulo resaltador de sintaxis para que se vea bien, pero el código en sí no se ejecuta.
Es similar a GitHub Gists.
Otra edición ¿Cómo puedo almacenar texto de varias líneas en Mongodb, luego, cuando se obtiene del servidor, convertirlo automáticamente para usar \n para saltos de línea y \t para tabulaciones?
Estoy haciendo una API REST en Express.js. Estoy usando la extensión Rest Client en VS Code para probar la API.
Estoy haciendo una solicitud de publicación al servidor para crear un fragmento de código. Los campos para el modelo de fragmento son todas cadenas, pero necesito un campo para contener el código real dentro de él. Intenté usar acentos graves y algunas otras cosas, pero parece que no puedo resolverlo.
Aquí está mi archivo "api.rest"
@hostname = localhost @port = 5000 @host = {{hostname}}:{{port}} @contentType = application/json # POST /users POST http://{{host}}/snippets HTTP/1.1 Content-Type: {{contentType}} { "title": "React Component", "code": "CHANGE THIS TO A MULTI-LINE JAVASCRIPT CODE SNIPPET", "creator": "nero1333" }Su caso de uso es muy simple. Solo desea guardar la entrada de texto en la base de datos y buscarla más tarde para mostrarla en el lado del cliente.
Solo tiene que enviar el código en forma de cadena que contenga \n para una nueva línea, \t para tabulaciones y \" para escapar de las comillas dobles utilizadas en el código.
Si está tomando información de un editor de texto usando una página web, ese editor escapará estos valores por usted y los enviará al servidor para almacenarlos.
Por ejemplo:
Desea guardar este código como mencionó en el comentario:
import React from 'react' class className extends React.Component render() { <div></div> }Envíalo como:
{ "code": "import React from 'react'\nclass className extends React.Component\n\trender() {\n\t\t<div></div>\n\t}" }De la misma manera lo ingresará en el cliente REST para probar la API.