Как (безопасно) визуализировать динамически сгенерированный SVG в React?

Я использую Maker JS для создания SVG для отображения в приложении React. Библиотека генерирует код SVG и возвращает его в виде строки. Учитывая, что строка генерируется внутри приложения, безопасно ли использовать опасно SetInnerHTML или html-response-parser (который не очищает HTML) для преобразования строки в HTML? Поскольку я не обрабатываю данные, вводимые пользователем, может ли это быть уязвимостью?

import React from "react";
import ReactDOM from "react-dom";
import parse from "html-react-parser";
import makerjs from "makerjs";

const line = {
  type: "line",
  origin: [0, 0],
  end: [100, 100]
};

const svg = makerjs.exporter.toSVG(line);

ReactDOM.render(
  <React.StrictMode>
    <div>{parse(svg)}</div>
  </React.StrictMode>,
  document.getElementById("root")
);

0 ответов

Другие вопросы по тегам