我有一个网站,基本上从数据库中的链接中提取 opengraph 元数据。现在我必须创建一个验证代码来检查用户通过提交框发送到我的网站数据库的链接是否对 opengraph 友好。我需要在链接中做一个测试,看看它的源代码上是否至少有 meta property="og:image",然后避免提交无法正常工作的链接。我也在使用 recaptcha 来避免垃圾邮件发送者,我在想我可以使用 recaptcha 的相同验证代码来进行这个 opengraph 测试。任何人都知道我该怎么做?
问问题
210 次
2 回答
0
我需要在链接中做一个测试,看看它的源代码是否至少有 meta property="og:image"
嗯,应该很明显,这意味着实际阅读该页面的源代码,并寻找元元素。
您是否只想读取资源的前 x 个字节(这就是 FB 所做的 AFAIK),然后执行字符串/正则表达式搜索,或者如果您想在其上使用 HTML 解析器并在 DOM 中查找它,那就是你做出的决定……第一个可能更容易出错,而第二个意味着更复杂。
于 2012-06-04T16:52:20.953 回答
0
好吧,几个月前我解决了这个问题,如果有人最终来到这里,我就是这样做的:
我没有尝试搜索元数据,而是将其$array
再次与所有 opengraph 元素一起使用,并检查我是否真的在那里得到了一些东西
require_once('OpenGraph.php');
$v = $_POST["submitted_by_user"];
$graph = OpenGraph::fetch($v);
if ($graph === false) {
die ('NO OPENGRAPH')
}
else {
// submit to database
}
亲切的问候
于 2013-01-31T16:49:56.393 回答