Fetch meta-tags from url only by jQuery

前端 未结 4 1569
时光说笑
时光说笑 2021-01-13 05:35

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?

<
相关标签:
4条回答
  • 2021-01-13 06:19

    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.]

    0 讨论(0)
  • 2021-01-13 06:22

    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.

    0 讨论(0)
  • 2021-01-13 06:29

    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");
    });
    
    0 讨论(0)
  • 2021-01-13 06:36

    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");
    });   
    
    0 讨论(0)
提交回复
热议问题