Formulieren met API's op een webpagina weergeven listing-forms-on-a-web-page-using-apis

AEM Forms biedt een REST-API voor zoekopdrachten die webontwikkelaars kunnen gebruiken om een set formulieren op te vragen en op te halen die aan de zoekcriteria voldoet. U kunt API's gebruiken om formulieren te zoeken op basis van verschillende filters. Het reactieobject bevat formulierkenmerken, eigenschappen en renderpunten van formulieren.

Als u formulieren wilt zoeken met de REST API, stuurt u een aanvraag naar de server op https://'[server]:[port]'/libs/fd/fm/content/manage.json met de hieronder beschreven queryparameters.

Query-parameters query-parameters

Kenmerknaam
Beschrijving
func

Geeft de aan te roepen functie op. Als u formulieren wilt zoeken, stelt u de waarde van het kenmerk func in op searchForms .

Bijvoorbeeld:

URLParameterBuilder entityBuilder=new URLParameterBuilder (); entityBuilder.add("func", "searchForms");

Nota: Deze parameter is verplicht.

appPath

Hier geeft u het toepassingspad op dat u wilt gebruiken om formulieren te zoeken. Door gebrek, zoekt het appPath attribuut alle toepassingen beschikbaar op het niveau van de wortelknoop.

U kunt meerdere toepassingspaden opgeven in één zoekquery. Scheid meerdere paden met verticale streep (|).

cutPoints

Geeft de eigenschappen aan die met de elementen moeten worden opgehaald. U kunt sterretje (*) gebruiken om alle eigenschappen tegelijk op te halen. Gebruik de verticale operator (|) om meerdere eigenschappen op te geven.

Bijvoorbeeld: cutPoints=propertyName1|propertyName2|propertyName3

Nota :

  • Eigenschappen zoals id, path en name worden altijd opgehaald.
  • Elk element heeft een andere set eigenschappen. Eigenschappen zoals formUrl, pdfUrl en guideUrl zijn niet afhankelijk van het kenmerk cutpoints. Deze eigenschappen zijn afhankelijk van het type element en worden dienovereenkomstig opgehaald.
relation

Hiermee geeft u de verwante elementen op die samen met de zoekresultaten moeten worden opgehaald. U kunt een van de volgende opties kiezen om gerelateerde elementen op te halen:

  • NO_RELATION : Haal geen verwante activa.
  • ONMIDDELLIJK : Vetst activa die direct met onderzoeksresultaten verwant zijn.
  • ALLES : Vets direct en onrechtstreeks verwante activa.
maxSize
Hiermee geeft u het maximum aantal formulieren op dat moet worden opgehaald.
offset
Hier geeft u het aantal formulieren op dat u vanaf het begin wilt overslaan.
returnCount
Geeft aan of de zoekresultaten die aan de opgegeven criteria voldoen, moeten worden geretourneerd.
instructies

Hier geeft u de lijst met instructies op. De query's worden uitgevoerd in de lijst met instructies die in de JSON-indeling zijn opgegeven.

Bijvoorbeeld:

JSONArray statementArray=new JSONArray(); JSONObject statement=new JSONObject(); statement.put("name", "title"); statement.put("value", "SimpleSurveyAF"); statement.put("operator", "EQ"); statementArray.put(statement);

In het bovenstaande voorbeeld:

  • naam : specificeert de naam van het bezit aan onderzoek naar.

  • waarde : specificeert de waarde van het bezit aan onderzoek naar.

  • exploitant : specificeert de exploitant toe te passen terwijl het zoeken. De volgende operatoren worden ondersteund:

    • EQ - Gelijk aan
    • NEQ - niet gelijk aan
    • GT - Groter dan
    • LT - Minder dan
    • GTEQ - Groter dan of gelijk aan
    • LTEQ - kleiner dan of gelijk aan
    • BEVAT - A bevat B als B deel uitmaakt van A
    • FULLTEXT - Volledige tekstzoekopdracht
    • STARTSWITH - A begint met B als B het eerste deel van A is
    • ENDSWITH - A eindigt met B als B het einddeel van A is
    • LIKE - Implementeert de operator LIKE
    • AND - Meerdere instructies combineren

    Nota: GT, LT, GTEQ, en de exploitanten LTEQ zijn van toepassing op eigenschappen van lineair type zoals LONG, DUBBEL, en DATUM.

orders

Hiermee geeft u de volgordecriteria voor de zoekresultaten op. De criteria worden gedefinieerd in de JSON-indeling. U kunt zoekresultaten sorteren op meerdere velden. De resultaten worden gesorteerd in de volgorde waarin de velden in de query worden weergegeven.

Bijvoorbeeld:

Voeg de volgende parameter toe om queryresultaten op te halen die zijn geordend door eigenschap title in oplopende volgorde:

JSONArray orderingsArray=new JSONArray(); JSONObject orderings=new JSONObject(); orderings.put("name", "title"); orderings.put("criteria", "ASC"); orderingsArray.put(orderings); entityBuilder.add("orderings", orderingsArray.toString());

  • naam : Specificeert de naam van het bezit te gebruiken om tot de onderzoeksresultaten opdracht te geven.

  • criteria : Specificeert de orde van de resultaten. Het kenmerk order accepteert de volgende waarden:

    • ASC - Gebruik ASC om resultaten in oplopende volgorde te rangschikken.
    • DES - Gebruik DES om resultaten in dalende orde te rangschikken.
includeXdp
Geeft aan of de binaire inhoud moet worden opgehaald. Het attribuut includeXdp is van toepassing op elementen van het type FORM , PDFFORM en PRINTFORM .
assetType
Geeft de elementtypen aan die moeten worden opgehaald van alle gepubliceerde elementen. Gebruik de verticale operator (|) om meerdere elementtypen op te geven. Geldige elementtypen zijn FORM, PDFFORM, PRINTFORM, RESOURCE en GUIDE.

Voorbeeldverzoek sample-request

func : searchForms
appPath : /content/dam/formsanddocuments/MyApplication23
cutPoints : title|description|author|status|creationDate|lastModifiedDate|activationDate|expiryDate|tags|allowedRenderFormat|formmodel
relation : NO_RELATION
includeXdp : false
maxSize : 10
offset : 0
returnCount : true
statements: [{"name":"name","value":"*Claim.xdp","operator":"CONTAINS"},
                {"name":"","value":"Expense","operator":"FULLTEXT"},
                {"name":"description","value":"ABCD*","operator":"CONTAINS"},
                {"name":"status","value":"false","operator":"EQ"},
                {"name":"lastModifiedDate","value":"01/09/2013","operator":"GTEQ"},
                {"name":"lastModifiedDate","value":"01/18/2013","operator":"LTEQ"}]
orderings:[{"name" :"lastModifiedDate":"order":"ASC"}]

Monsterreactie sample-response

[
{"resultCount":2},
    {"assetType":"FORM","name":"ExpenseClaim.xdp","id":"509fa2d5-e3c9-407b-b8dc-fa0ba08eb0ce",
       "path":"/content/dam/formsanddocuments/MyApplication23/1.0/ExpenseClaim.xdp",
       "title":"Expense Report","description":"ABCDEFGIJK","author":"Frank Bowman",
       "tags":[],"formUrl":"/content/dam/formsanddocuments/MyApplication23/1.0/ExpenseClaim.xdp/jcr:content",
       "pdfUrl":"/content/dam/formsanddocuments/MyApplication23/1.0/ExpenseClaim.xdp/jcr:content?type=pdf",
       "references":[],"images":[{"assetType":"resource","name":"Image.gif","id":"5477a127-8bbf-4cec-8f81-2689e5cb4a15",
       "path":"/content/dam/formsanddocuments/MyApplication23/1.0/Image.gif","resourceSize":0}],
       "status":false,"creationDate":1358429845623,"lastModifiedDate":1358429846771},
{"assetType":"FORM","name":"ExpenseClaim.xdp","id":"4312239b-b666-4d36-95bc-641b3a39ddd4",
       "path":"/content/dam/formsanddocuments/MyApplication23/ExpenseClaim.xdp",
       "title":"Expense Report","description":"ABCDefghijklm","author":"Frank Bowman",
       "tags":[],"formUrl":"/content/dam/formsanddocuments/MyApplication23/ExpenseClaim.xdp/jcr:content",
       "pdfUrl":"/content/dam/formsanddocuments/MyApplication23/ExpenseClaim.xdp/jcr:content?type=pdf",
       "references":[],"images":[{"assetType":"resource","name":"Image.gif","id":"118a2e3f-7097-4d8c-85d1-651306de284a",
       "path":"/content/dam/formsanddocuments/MyApplication23/Image.gif","resourceSize":0}],"status":false,
       "creationDate":1358429856690,"lastModifiedDate":1358430109023}
]

Verwante artikelen

recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2