khe*_*hex 5 url jquery dom meta-tags
现在有许多脚本可以从facebook中获取来自url的数据,但是它们都只能在jQuery和PHP的组合中运行.是否可以仅通过jQuery获取URL?
我在这里找到了如何通过以下方式获取页面的mata-tags:
$('meta[name=description]').attr("content");
$("meta[property=og:title]").attr("content", document.title);
Run Code Online (Sandbox Code Playgroud)
但是如何在jQuery.get()中正确插入此查询以获取文本值?
$.get('http://www.imdb.com/title/tt1375666/', function(data) {
$('meta[name=adescription]').attr("content");
});
Run Code Online (Sandbox Code Playgroud)
如果最流行的网站使用OpenGraph,我应该朝着jQuery.getJSON()的方向看?
Reb*_*cca 13
由于跨原产政策,似乎这是不可能的
通过组合客户端和服务器端更改,肯定有这样做的方法.相反,我一直在一个项目中使用这个API,该项目可以作为一个简单的REST API来获取url的开放图形数据.
GET https://opengraph.io/api/1.0/site/<URL encoded site URL>
https://opengraph.io/
它一直在为我作为客户端javascript唯一的解决方案.
[注意:我与此产品或其创建者没有任何关系.我通过在线研究找到了它并在项目中使用它.
小智 5
带过滤器效果很好!
你可以试试。
$.get('http://www.guardian.co.uk/culture/2012/jun/21/jimmy-carr-apologises-error-tax', function(data) {
$(data).filter('meta[name=adescription]').attr("content");
});
Run Code Online (Sandbox Code Playgroud)
可以使用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)
});
Run Code Online (Sandbox Code Playgroud)
使用apple-itunes-app它是因为它是 IMDB 上的实际元标记。
使用从 URL 检索到的 html 数据
$.get('http://www.guardian.co.uk/culture/2012/jun/21/jimmy-carr-apologises-error-tax',
function(data) {
$(data).find('meta[name=adescription]').attr("content");
});
Run Code Online (Sandbox Code Playgroud)