Сохранение кода в базе данных, какие ошибки я должен быть осторожен - PullRequest
0 голосов
/ 04 октября 2018

Я занимаюсь разработкой системы, которая принимает представленный пользователем код и сохраняет его в базе данных.Код может быть на любом языке: ruby, python, elixir, javascript и т. Д. Нет ограничений на язык.Код, сохраненный в базе данных, никогда не предназначен для запуска.Он будет отображаться в статье блога или преобразован в файл для скачивания.Аналогичным примером может быть GitHub gist или Cacher , который принимает представленный пользователем код и отображается на веб-сайте.

  1. Как убедиться, что введенный пользователем код очищен и безопасен для отображения на веб-странице с подсветкой кода?
  2. Какую обработку мне нужно выполнить для кода, чтобы я мог безопасно его отобразить?Я не хочу налагать жесткие ограничения на пользователей.
  3. Есть ли что-то, что мне нужно знать?
  4. Есть идеи, как эти веб-сайты реализуют эту функцию?

    Я использую Elixir и Phoenix Framework.Есть ли подводные камни, о которых я должен быть осторожен?Я думаю об использовании модуля Phoenix.HTML для экранирования кодов.Я просто хочу быть уверен, что мой подход не имеет известных дыр в петле.

1 Ответ

0 голосов
/ 06 октября 2018
...