Vejo bastante sites mal configurados que parecem usar vários métodos para bloquear o ‘hotlinking’ de imagens, mas retornam links para essas imagens nos dados de incorporação, por exemplo:
Ao verificar com http://debug.iframely.com/, realmente acredito que isso não seja um problema do Discourse em si, mas a aparência é ruim.
Uma ideia é que a criação do onebox pudesse buscar a imagem ao preparar a postagem e, em seguida, armazenar uma miniatura para servir depois ou, se não fosse possível recuperá-la, agir como se nenhuma imagem tivesse sido especificada.
Armazenar uma cópia da imagem seria bastante robusto e à prova de futuro, e acredito que isso se enquadre no uso justo para fins de direitos autorais (o site original não será prejudicado pela reutilização de uma miniatura de 130x90 recuperada dos metadados, embora eu não seja advogado).
Caso contrário, tentei criar um componente para capturar o evento de erro nas imagens e, em seguida, adicionar uma classe para definir display:none nelas ou em seu wrapper. Ainda não consegui, pois fiquei preso em decorateCookedElement()… Não tenho certeza se estou olhando no lugar certo.
Então, sou só eu que pareço sofrer com imagens quebradas frequentemente nos oneboxes? Alguém mais tem uma solução alternativa?
Não fazemos isso já? Verifique sua postagem novamente!
Obviamente, não é no momento da preparação, pois você não coloca solicitações web nesse caminho crítico, mas nós enfileiramos e baixamos a imagem do onebox em segundo plano.
Aguardamos o período de graça de edição (padrão 300s) para baixá-la se baixar imagens remotas para local (padrão verdadeiro).
É importante ter cuidado e ponderar as repercussões ao alterar as configurações padrão. Nossas configurações já vêm otimizadas de fábrica, e desviar delas pode ter consequências não intencionais.
É um ponto válido. Geralmente, sigo as configurações padrão, mas, neste caso, parece que a configuração foi alterada por um administrador anterior — não tenho certeza do motivo.
Espero que essa configuração faça com que as imagens nos oneboxes do Instagram persistam agora também.