Spreadsheets en JSON
Naast het vertalen van Google Docs en Word-documenten naar markeringen en HTML-opmaakcodes, AEM ook werkbladen (Microsoft Excel-werkboeken en Google Sheets) naar JSON-bestanden vertalen die eenvoudig door uw website of webtoepassing kunnen worden gebruikt.
Dit laat vele toepassingen voor inhoud toe die lijst-georiënteerd of gestructureerd is.
Bladen en bladstructuur
Het eenvoudigste voorbeeld van een blad bestaat uit een tabel waarin de eerste rij als kolomnamen en de volgende rijen als gegevens worden gebruikt. Een voorbeeld kan er ongeveer zo uitzien.
Na een voorvertoning en publiceer u via het dialoogvenster sidekick, AEM deze tabel vertaalt naar een JSON-representatie die wordt betekend aan aanvragen bij de overeenkomstige .json
resource. Het bovenstaande voorbeeld wordt vertaald naar:
{
"total": 4,
"offset": 0,
"limit": 4,
"data": [
{
"Source": "/sidekick-extension",
"Destination": "https://chrome.google.com/webstore/detail/helix-sidekick-beta/ccfggkjabjahcjoljmgmklhpaccedipo"
},
{
"Source": "/github-bot",
"Destination": "https://github.com/apps/helix-bot"
},
{
"Source": "/install-github-bot",
"Destination": "https://github.com/apps/helix-bot/installations/new"
},
{
"Source": "/tutorial",
"Destination": "/developer/tutorial"
}
],
":type": "sheet"
}
AEM kunt u werkboeken met meerdere bladen beheren.
- Indien er slechts één blad is, AEM gebruikt dat blad standaard als bron van de informatie.
- Indien er meerdere bladen zijn, AEM levert alleen vellen die vooraf zijn voorzien van
helix-
Hiermee kunt u aanvullende informatie en mogelijk formules in hetzelfde spreadsheet bewaren die niet op het web worden geleverd. - Als er een werkblad met de naam
helix-default,
het wordt geleverd als er geen extra vraagparameters worden verstrekt.
Zie de volgende sectie voor details over hoe te om een specifiek blad te vragen.
Zoekparameters
Verschuiven en beperken
Spreadsheets en JSON-bestanden kunnen erg groot worden. In dergelijke gevallen ondersteunt AEM het gebruik van limit
en offset
query-parameters om aan te geven welke rijen van het spreadsheet worden geleverd.
Aangezien AEM altijd JSON comprimeert, zijn de nuttige lasten over het algemeen relatief klein. AEM het aantal rijen dat wordt geretourneerd, wordt daarom standaard beperkt tot 1000 als de limit
queryparameter is not specified. Dat is voldoende voor veel eenvoudige gevallen.
Werkblad
De sheet
De vraagparameter staat een toepassing toe om één of veelvoudige specifieke bladen in spreadsheet of het werkboek te specificeren. Als voorbeeld ?sheet=jobs
retourneert de naam van het blad helix-jobs
en ?sheet=jobs&sheet=articles
retourneert de gegevens voor de genoemde bladen helix-jobs
en helix-articles
.
Speciale bladnamen
In bepaalde gevallen schrijft AEM ook naar spreadsheets, waar specifieke bladnamen worden verwacht.
- De service Formulieren alleen naar een blad met de naam
incoming
, die nooit als JSON wordt geleverd. - De indexservice alleen naar een blad met de naam
raw_index
, die aan JSON kan worden geleverd in een eenvoudige installatie van één blad.
Zie de koppelingen hierboven voor meer informatie over deze services.
Arrays
Native arrays worden niet ondersteund als celwaarden, zodat ze als tekenreeksen worden geleverd.
"tags": "[\"Adobe Life\",\"Responsibility\",\"Diversity & Inclusion\"]"
U kunt ze in JavaScript omzetten in arrays met JSON.parse()
.