Cuando escribes una URL en Facebook, aparece automáticamente la función "publicar un enlace". Con la mayoría de los sitios web, carga automáticamente una selección de imágenes que extrae de algún lugar de la página para acompañar el enlace y la descripción. ¿Alguien tiene una idea de cómo implementar esa misma función para nuestro propio sitio sin ninguna API de FB, etc., solo javascript o JQuery?
Debido a restricciones de seguridad, JavaScript no puede cargar ninguna página desde ningún servidor. Facebook en realidad solicita a los servidores de Facebook información sobre esa página, y los servidores, a su vez, consultan la página para extraer la información. Usted también necesitará una implementación del lado del servidor de esto.
Aparte de eso, es bastante simple: use una biblioteca de cliente HTTP para el idioma de su elección para conectarse a la URL provista, luego use una biblioteca de análisis de HTML para extraer la etiqueta del title , identifique una parte significativa del texto en la etiqueta del body y extraiga las fuentes de etiquetas img que parecen más apropiadas.
Una vez que su servidor puede extraer información sobre una página, es un ejercicio bastante simple llamarlo a través de AJAX.
@Keshan.
Desarrollé una vista previa de enlace de Facebook con PHP y jQuery que está en mi sitio web. Échale un vistazo... El código fuente es gratis... No puse el código completo aquí porque son muchos archivos... Pero si prefieres que el código sea puesto aquí, dímelo y lo publico.
Está disponible en Github https://github.com/LeonardoCardoso/Facebook-Link-Preview
Creo que los siguientes pasos están involucrados
og:title si falta en <title>og:description si falta en <meta name="description" ....og:image si falta en <img src=....curl o file_get_contents y analizar los datos requeridos detallados anteriormente. No estoy seguro acerca de otro idioma.Además, creo que FB almacena los datos, una vez encontrados, en la base de datos y las primeras consultas allí. Esto les ayuda a obtener resultados más rápidos y, por lo tanto, compartir el mismo artículo y generar la imagen y los detalles a partir de los datos almacenados.
Necesitará Javascript para mostrar esta vista previa en tiempo de ejecución (mientras escribe en el área de texto). Sin embargo, si solo lo necesita después de publicar los datos, puede hacerlo con lenguaje puro del lado del servidor (puede evitar javascript) y siguiendo los pasos anteriores simplemente elimine la llamada AJAX.