Estoy haciendo una aplicación web de fragmento de código. Básicamente, puede cargar fragmentos y organizarlos, etc. Tengo problemas para decidir cómo almacenar el código.
Actualmente, estoy usando express para crear una API para conectarme a la interfaz. Estoy insertando el código que se ingresó en el área de texto y guardándolo en texto sin formato en mongodb.
let snippet = new Snippet({ title: req.body.title, code: req.body.code, creator: req.body.creator, createdDate: date, updatedDate: date, collections: req.body.collections, }); await snippet.save((error, Snippet) => { if (error) { console.log( "postSnippet(): Failed to save snippet to database. Error: " + error ); return res .status(500) .json({ message: "Failed to save snippet to database" }); } else { console.log("postSnippet(): Snippet created."); return res .status(201) .json({ message: "Snippet created", snippet }); } });Cuando pego el código en la interfaz de la interfaz de usuario, se muestra bien. Pero por alguna razón, cuando trato de obtener el código sin procesar en un archivo separado, todos los saltos de línea no funcionan.
export const fetchRawSnippet = async (req, res) => { let snippetUrl = req.params.slug; if (snippetUrl) { try { const fetchSnippets = await Snippet.findOne({ slug: snippetUrl }); if (fetchSnippets) { res.send(fetchSnippets.code); return res.status(200).json(fetchSnippets.code); } else { return res .status(404) .json({ message: "Could not find snippet" }); } } catch (e) {} } else { return res.status(404).json({ message: "slug not provided" }); }};
Me pregunto si es una mejor idea usar la API de GitHub Gists para alojar los fragmentos... No estoy seguro. ¿Puede alguien guiarme en la dirección correcta sobre la mejor manera de almacenar códigos?