Fetch meta-tags from url only by jQuery

瘦欲@ 提交于 2020-01-11 05:26:09

问题


Now a lot of scripts to facebook-style fetching data from url, but all of them work only in combination of jQuery and PHP. Is it possible to fetch url only by jQuery?

I have found here how to get mata-tags of page by:

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

But how correctly insert this query in jQuery.get() to get text values?

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

And if the most popular sites use OpenGraph should I look in the direction of jQuery.getJSON()?


回答1:


Use the html data retrieved from 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");
});



回答2:


It seems like this wouldn't be possible because of the Cross Origin Policy

There are definitely ways of doing it with combination client & server side changes. Instead I've been using this API in a project that works well as a simple REST API to get a url's open graph data. GET https://opengraph.io/api/1.0/site/<URL encoded site URL> https://opengraph.io/

It's been working for me as a client-side javascript only solution.

[NOTE: I have no relationship to this product or its creators. I found it through online research and used it in a project.]




回答3:


With filter works fine!

You can try.

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



回答4:


It's possible using 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)
});

Used apple-itunes-app because it's an actual meta tag on IMDB.



来源:https://stackoverflow.com/questions/11136011/fetch-meta-tags-from-url-only-by-jquery

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!