我想知道当涉及到丰富的片段或微数据以及使用json数据时如何通过Google的测试工具。
问题是我无法选择使用 PHP,只能使用 javascript。因此,当我想从商店的可信商店获取评论数据时,我从未通过测试工具,因为当 Google 抓取页面时,数据始终为空。
所以我的意思是这样的:
有一个包含评论数据的 json 文件的直接链接
http://api.trustedshops.com/rest/public/v2/shops/X17BD396442BCEE0808C79156D0E95F97/quality/reviews.json
我尝试的是这个
<script type="text/javascript">
window.onload = function(){
var url = 'http://api.trustedshops.com/rest/public/v2/shops/X17BD396442BCEE0808C79156D0E95F97/quality/reviews.json';
$.getJSON(url, function(data){
var stuff = data.response.data;
var review = stuff.shop.qualityIndicators
$('#value').html(review.reviewIndicator.overallMark);
$('#votes').html(review.reviewIndicator.activeReviewCount);
});
}
</script>
HTML 输出
<span xmlns:v="http://rdf.data-vocabulary.org/#" typeof="v:Review-aggregate">
<span rel="v:rating">
<span property="v:value" id="value">4.83</span> /
<span property="v:best" id="best">5.00</span>
</span> of
<span property="v:votes" id="votes">58</span> reviews.
</span>
现在,使用 Google 的测试工具,我总是会收到 3 个错误,提示“不能留空...”。
这样的事可能吗?
最佳答案
所以我不知道如何使用这个工具,但他们的示例中都没有 javascript。我认为该工具在尝试验证数据之前不会在左侧框中执行任何 JavaScript。有<script type="application/ld+json">
的例子标签,但它们只是 JSON 数据,而不是可执行代码(请注意 type
)。
为了验证这一点,我只需输入以下代码段:
<script type="text/javascript">
console.log('it this on?');
</script>
当我单击“验证”时,浏览器控制台中没有显示任何内容。
无论您试图让这个工具做什么,我认为都超出了它的预期使用范围。该工具似乎可以验证代码的结果,但也无法运行您的代码。
关于javascript - 来自 json 的微数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30333951/