2012-06-21 12 views
5

Ahora una gran cantidad de scripts para el estilo de Facebook que recuperan datos de la url, pero todos ellos funcionan solo en combinación de jQuery y PHP. ¿Es posible buscar url solo por jQuery?Obtener metaetiquetas de la url solo por jQuery

he encontrado aquí cómo conseguir Mata-etiquetas de la página por:

$('meta[name=description]').attr("content"); 
$("meta[property=og:title]").attr("content", document.title); 

Pero cómo insertar correctamente esta consulta en jQuery.get() para obtener los valores de texto?

$.get('http://www.imdb.com/title/tt1375666/', function(data) { 
    $('meta[name=adescription]').attr("content"); 
}); 

Y si los sitios más populares utilizan OpenGraph debería mirar en la dirección de jQuery.getJSON()?

+0

¿No tendrá la solicitud el problema del origen entre dominios? – Terminal

Respuesta

4

utilizar los datos recuperados de HTML URL

$.get('http://www.guardian.co.uk/culture/2012/jun/21/jimmy-carr-apologises-error-tax', 
function(data) { 
    $(data).find('meta[name=adescription]').attr("content"); 
}); 
+0

Gracias, pero me devuelve toda la página, y no fide meta-tags en ella – khex

2

Con filtro funciona bien!

Puedes intentarlo.

$.get('http://www.guardian.co.uk/culture/2012/jun/21/jimmy-carr-apologises-error-tax', function(data) { 
    $(data).filter('meta[name=adescription]').attr("content"); 
}); 
11

Parece que esto no sería posible debido a la Cross Origin Policy

Definitivamente, hay maneras de hacerlo con el cliente combinación & cambios del lado del servidor. En cambio, he estado usando esta API en un proyecto que funciona bien como una API REST simple para obtener datos de gráficos abiertos de una URL. GET https://opengraph.io/api/1.0/site/<URL encoded site URL> https://opengraph.io/

Se ha estado trabajando para mí como del lado del cliente JavaScript única solución.

[NOTA: no tengo ninguna relación con este producto o sus creadores. Lo encontré a través de investigación en línea y lo utilizó en un proyecto]

+1

Acabo de actualizar la publicación para explicar, sin relación, solo un usuario. – Rebecca

+1

¡Gracias, muy apreciados! –

2

Es posible utilizar CORS Anywhere:.

$.get("https://cors-anywhere.herokuapp.com/http://www.imdb.com/title/tt1375666/", function(data) { 
    var meta = $(data).filter('meta[name="apple-itunes-app"]').attr("content"); 
    console.log(meta) 
}); 

usados ​​apple-itunes-app porque es una etiqueta meta real en IMDB.