Vedo molti siti mal configurati che sembrano utilizzare vari metodi per bloccare il ‘hotlinking’ delle immagini, ma restituiscono comunque i link a tali immagini nei dati di incorporamento, ad esempio:
Controllando con http://debug.iframely.com/, sono convinto che questo non sia un problema specifico di Discourse, ma la situazione appare comunque poco elegante.
Un’idea potrebbe essere far sì che la creazione della onebox recuperi l’immagine durante la cottura del post e memorizzi una miniatura da servire in seguito, oppure, se non riesce a recuperarla, si comporti come se non fosse stata specificata alcuna immagine.
Memorizzare una copia dell’immagine sarebbe piuttosto robusto e resistente al passare del tempo; credo inoltre che rientri nel fair use a fini di copyright (il sito originale non subirebbe alcun danno dal riutilizzo di una miniatura 130x90 recuperata dai metadati, anche se non sono un avvocato).
In mancanza di ciò, ho provato a creare un componente per intercettare l’evento di errore sulle immagini e aggiungere una classe per impostarle su display:none, oppure per il loro contenitore. Non ci sono ancora riuscito perché mi sono arenato in decorateCookedElement()… Non sono sicuro di stare guardando nel posto giusto.
Quindi, sono l’unico a riscontrare frequentemente immagini rotte nelle onebox? Qualcun altro ha trovato una soluzione alternativa?
Ovviamente non avviene al momento della cottura, perché non si inseriscono richieste web in quel percorso critico, ma la mettiamo in coda e scarichiamo l’immagine della onebox in background.
Attendiamo il periodo di grazia per la modifica (predefinito 300s) per scaricarla se scarica immagini remote in locale (predefinito true).
È importante fare attenzione e riflettere sulle conseguenze quando si modificano le impostazioni predefinite. Forniamo configurazioni ottimali già pronte all’uso, e allontanarsi da queste può avere conseguenze non intenzionali.
È un punto valido. In genere mi attengo alle impostazioni predefinite, ma in questo caso sembra che la configurazione sia stata modificata da un amministratore precedente non so perché.
Spero che questa impostazione faccia sì che anche le immagini nelle onebox di Instagram vengano conservate ora.