使用 json 数据获取错误和警告

问题描述

以下是我尝试使用 Json-LD 表示的 Json 数据:

var schemaOrg = angular.toJson({
        "@context": "http://schema.org","@type": "RealEstateAgent","RealEstateAgent": {
                "@type": "RealEstateAgent","address": "123,Xyz Tower,ajkshjask","areaServed": "Chicago","brand": "My Brand","email": "abc@gmail.com","kNowsLanguage": "English","legalName": "Jerry Kon","image": "http:samplepic.com","description": "I am great","name": "Jerry Kon","url": "http:myprofilepic.com","Telephone": "1234567899"
            }
    });

这是我渲染它的方式:

<script type="application/ld+json" id="json-ld-music-group"></script>

angular.element(document).ready(function () {
                        var jsonLd = angular.element(document.getElementById('json-ld-music-group'))[0];
                        console.log(jsonLd);
                        jsonLd.innerHTML = schemaOrg;
                        console.log(jsonLd.innerHTML);
                    });

现在,当我复制粘贴整个 HTML 并尝试在 Google 结构化数据测试工具中进行测试时,这就是我得到的结果:

enter image description here

但是我收到警告和错误,我不明白为什么。我的数据中已经有 name and image 属性,并且显示错误。我还有地址、电话,它仍然显示警告。

有人可以帮我解决这个问题吗?

解决方法

您在 RealEstateAgent 中有一个无效的 RealEstateAgent。把它压平就可以了:


    {
      "@context": "http://schema.org","@type": "RealEstateAgent","address": "123,Xyz Tower,ajkshjask","areaServed": "Chicago","brand": "My Brand","email": "abc@gmail.com","knowsLanguage": "English","legalName": "Jerry Kon","image": "http:samplepic.com","description": "I am great","name": "Jerry Kon","url": "http:myprofilepic.com","Telephone": "1234567899"            
    }