FastComments.com

Qui tratteremo il formato dei commenti di FastComments, le funzionalità supportate durante la scrittura dei commenti, come formattare il testo, e i vari filtri e misure di sicurezza incorporati nel sistema.

Formattazione di base Internal Link

FastComments utilizza una combinazione di Markdown e un semplice sottoinsieme di HTML per consentire la scrittura di commenti.

Una buona risorsa per la sintassi Markdown è qui.

Per la formattazione più comune, puoi utilizzare la barra degli strumenti di formattazione per fare cose come rendere il testo in grassetto o corsivo.

Alcuni esempi di sintassi sono:

  • Grassetto:
    • **grassetto**
    • <b>testo in grassetto</b>
  • Corsivo:
    • *corsivo*
    • <i>testo in corsivo</i>
  • Barrato:
    • ~~barrato~~
    • <strike>barrato</strike>
  • Citazioni:
    • > citazione

Nota che i titoli Markdown non sono supportati.

I link possono essere scritti come URL grezzi, senza HTML o altra sintassi, e per impostazione predefinita il link verrà trasformato in un link cliccabile con target="nofollow noopener" per scoraggiare gli spammer. Alcuni siti possono scegliere di disabilitare la creazione automatica dei link.

Gli elenchi ordinati possono essere scritti come:

1. Primo elemento.
2. Secondo elemento.
3. Terzo elemento.

Lo stesso vale per gli elenchi puntati:

- Un punto.
- Un altro punto.

Per le comunità orientate alla programmazione, il codice può essere condiviso incollandolo nell'area dei commenti, e il linguaggio verrà rilevato e formattato automaticamente. Il codice può essere aggiunto in tag <code></code> o blocchi di codice Markdown con backtick.

Sicurezza Internal Link

Ci sono molteplici aspetti di sicurezza quando si consente alle persone di aggiungere contenuti a un sito web e poi di renderizzare quel contenuto su molti tipi diversi di dispositivi.

Prevenzione dell'abuso di formattazione

Le persone possono scrivere contenuti che sono intenzionalmente visivamente distraenti e sminuiscono il valore delle discussioni abusando della formattazione del testo.

FastComments fa diverse cose per prevenire l'abuso riguardo alla formattazione:

  • Le grandi interruzioni di riga consecutive ripetute vengono compresse.
  • Non renderizziamo i titoli (diventano testo normale).
  • Non consentiamo CSS o colori personalizzati.

Prevenzione degli exploit

Gli exploit possono essere creati nei sistemi che renderizzano HTML. FastComments fa diverse cose per prevenire questo:

  • Consentiamo solo un insieme esplicitamente definito di tag HTML.
  • Consentiamo solo un insieme esplicitamente definito di attributi dei tag HTML.
  • Purifichiamo e sanifichiamo tutti gli input.
    • Questo viene fatto tramite le librerie DOMPurify e sanitizeHtml.
    • Abbiamo scelto queste librerie perché sono ben testate (con oltre 4 e 1 milione di download a settimana, rispettivamente).

Questo significa che gli utenti non possono fare cose come scrivere tag <script> o <style>, o tentare di aggiungere script di tipo onload=alert() alle immagini o ad altri contenuti.

I tag HTML che consentiamo sono i seguenti:

  • <b>
  • <em>
  • <u>
  • <i>
  • <strike>
  • <pre>
  • <span>
  • <code>
  • <img>
  • <a>
  • <strong>
  • <ul>
  • <ol>
  • <li>
  • <br>