Visa formulär på en webbsida med API:er listing-forms-on-a-web-page-using-apis

CAUTION
AEM 6.4 har nått slutet på den utökade supporten och denna dokumentation är inte längre uppdaterad. Mer information finns i teknisk supportperiod. Hitta de versioner som stöds här.

AEM Forms tillhandahåller ett REST-baserat söknings-API som webbutvecklare kan använda för att fråga och hämta en uppsättning formulär som uppfyller sökvillkoren. Du kan använda API:er för att söka efter formulär baserat på olika filter. Svarsobjektet innehåller formulärattribut, egenskaper och återge formulärens slutpunkter.

Om du vill söka efter formulär med REST API skickar du en GET-förfrågan till servern på https://[server]:[port]/libs/fd/fm/content/manage.json med frågeparametrar som beskrivs nedan.

Frågeparametrar query-parameters

Attributnamn
Beskrivning
func

Anger den funktion som ska anropas. Om du vill söka efter formulär anger du värdet för func attribut till searchForms.

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

Obs! Den här parametern är obligatorisk.

appPath

Anger den programsökväg som ska användas för att söka efter formulär. Som standard söker attributet appPath igenom alla program som finns på rotnodnivån.

Du kan ange flera programsökvägar i en enda sökfråga. Avgränsa flera banor med vertikalstreck (|).

cutPoints

Anger vilka egenskaper som ska hämtas med resurserna. Du kan använda asterisk (*) för att hämta alla egenskaper samtidigt. Använd vertikalstrecksoperatorn (|) om du vill ange flera egenskaper.

Till exempel, cutPoints=propertyName1|propertyName2|propertyName3

Anteckning:

  • Egenskaper som id, sökväg och namn hämtas alltid.
  • Alla resurser har olika egenskapsuppsättningar. Egenskaper som formUrl, pdfUrl och guideUrl är inte beroende av attributet cutpoints. Dessa egenskaper beror på resurstypen och hämtas därefter.
relation

Anger de relaterade resurser som ska hämtas tillsammans med sökresultaten. Du kan välja något av följande alternativ för att hämta relaterade resurser:

  • NO_RELATION: Hämta inte relaterade resurser.
  • OMEDELBART: Hämtar resurser som är direkt relaterade till sökresultat.
  • ALLA: Hämta direkt och indirekt relaterade tillgångar.
maxSize
Anger maximalt antal formulär som ska hämtas.
offset
Anger antalet formulär som ska hoppas över från början.
returnCount
Anger om sökresultaten som matchar det angivna villkoret ska returneras eller inte.
programsatser

Anger listan med programsatser. Frågorna körs i listan med programsatser som anges i JSON-format.

Till exempel,

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

I exemplet ovan

  • name: Anger namnet på egenskapen som ska sökas efter.

  • value: anger värdet på den egenskap som du vill söka efter.

  • operator: anger vilken operator som ska användas vid sökning. Följande operatorer stöds:

    • EQ - lika med
    • NEQ - Inte lika med
    • GT - större än
    • LT - Mindre än
    • GTEQ - större än eller lika med
    • LTEQ - mindre än eller lika med
    • CONTAINS - A innehåller B om B är en del av A
    • FULLTEXT - Fullständig textsökning
    • STARTSWITH - A börjar med B om B är den första delen av A
    • ENDSWITH - A slutar med B om B är slutdelen av A
    • LIKE - Implementerar operatorn LIKE
    • AND - Kombinera flera programsatser

    Obs! GT-, LT-, GTEQ- och LTEQ-operatorer kan användas för egenskaper av linjär typ som LONG, DUBLE och DATE.

orderfunktioner

Anger sökresultatens ordningsvillkor. Kriterierna definieras i JSON-formatet. Du kan sortera sökresultat i mer än ett fält. Resultatet sorteras i den ordning som fälten visas i frågan.

Till exempel,

Om du vill hämta frågeresultat ordnade efter title-egenskap i stigande ordning lägger du till följande parameter:

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

  • name: Anger namnet på den egenskap som ska användas för att ordna sökresultaten.

  • kriterier: Anger resultatordningen. Attributet order accepterar följande värden:

    • ASC - Använd ASC för att ordna resultatet i stigande ordning.
    • DES - Använd DES för att ordna resultatet i fallande ordning.
includeXdp
Anger om det binära innehållet ska hämtas eller inte. The includeXdp attribut kan användas för tillgångar av typen FORM, PDFFORMoch PRINTFORM.
assetType
Anger de resurstyper som ska hämtas från alla publicerade resurser. Använd vertikalstrecksoperatorn (|) för att ange flera resurstyper. Giltiga resurstyper är FORM, PDFFORM, PRINTFORM, RESOURCE och GUIDE.

Exempelbegäran 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”}]

Exempelsvar 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}
]

Relaterade artiklar

recommendation-more-help
a6ebf046-2b8b-4543-bd46-42a0d77792da