Skip To Content

Utilizzare i parametri URL

Le app create con Web AppBuilder possono essere modificate direttamente con i parametri dell'URL. L'URL inizia sempre con <your portal url>/apps/webappviewer/index.html? e include uno o più dei parametri elencati di seguito. Per includere più parametri, separarli con una e commerciale (&). Di seguito è riportato un esempio:

http://<your portal url>/apps/webappviewer/index.html?id=6815e148ff1c4aee8dc7159816380a4d&webmap=9cf053ea602345ddae060010c470e615
Suggerimento:

Esiste ora un modo più semplice per costruire parametri URL. Aggiungere il widget Condividi nell'app e fare clic su Opzioni di collegamento. Anteprima collegamento visualizza i parametri selezionati e un collegamento rapido che include i parametri URL viene generato automaticamente. Si noti che il widget per la ricerca deve essere abilitato nell'app per poter utilizzare il parametro find.

Nota:

Attualmente le app 3D non supportano i parametri URL.

Codificare i parametri di interrogazione

È necessario che tutti i parametri di interrogazione siano codificati. La codifica sostituisce i caratteri non validi con il simbolo % seguito dal relativo equivalente esadecimale.

Qui di seguito viene riportato un esempio di parametro URL non codificato:

http://<your portal url>/apps/webappviewer/index.html?find=380 new york street, redlands, ca

Lo stesso parametro codificato:

http://<your portal url>/apps/webappviewer/index.html?find=380%20new%20york%20street,%20redlands,%20ca

Nel Web sono presenti diversi siti e strumenti gratuiti per la generazione di URL codificati. Ad esempio, Albion Research Ltd. dispone della pagina URLEncode and URLDecode Page. Per migliorare la leggibilità, gli altri esempi presenti in questo argomento non sono codificati.

Aprire un'app salvata

Per aprire un'app salvata creata con Web AppBuilder, utilizzare id= e l'ID univoco dell'app, come illustrato nel seguente esempio.

http://<your portal url>/apps/webappviewer/index.html?id=6815e148ff1c4aee8dc7159816380a4d

Definire la mappa Web

Per definire la mappa Web, utilizzare webmap= e l'ID univoco della mappa Web, come illustrato nel seguente esempio.

http://<your portal url>/apps/webappviewer/index.html?webmap=9cf053ea602345ddae060010c470e615

Centrare la mappa

Per centrare la mappa in base a una posizione specifica, impostare center= utilizzando coordinate geografiche (x,y) o coordinate proiettate (x,y,WKID).

Attenzione:

Come separatori è possibile utilizzare le virgole o i punti e virgola. Utilizzare il punto e virgola se i numeri utilizzano le virgole per i decimali.

Di seguito è riportato un esempio di coordinate geografiche:

http://<your portal url>/apps/webappviewer/index.html?center=34,-50

Di seguito è riportato un esempio di coordinate proiettate:

http://<your portal url>/apps/webappviewer/index.html?center=500000,5500000,102100

Definire il livello di scala

Per definire il livello di scala della mappa, utilizzare i parametri center= e level=. Per il parametro level è possibile specificare l'ID livello della scala cache elencato nell'endpoint REST del Map Service. Di seguito è riportato un esempio:

http://<your portal url>/apps/webappviewer/index.html?center=20,45&level=4

Definire la scala

Per definire la scala della mappa, utilizzare i parametri center= e scale=. Per il parametro scale è possibile specificare la scala cache elencata nell'endpoint REST del Map Service. Di seguito è riportato un esempio:

http://<your portal url>/apps/webappviewer/index.html?center=20,45&scale=4622324

Definire l'estensione

Per definire l'estensione della mappa utilizzare extent=. Il parametro extent coordinate geografiche (GCS) sotto forma di MinX,MinY,MaxX,MaxY, coordinate proiettate (PCS) sotto forma di MinX,MinY,MaxX,MaxY,WKID o una stringa Well-Known Text String (WKT) sotto forma di MinX,MinY,MaxX,MaxY,WKT. Come separatori è possibile utilizzare le virgole o i punti e virgola. Utilizzare il punto e virgola se i numeri utilizzano la virgola per i decimali.

Di seguito è riportato un esempio di coordinate geografiche:

http://<your portal url>/apps/webappviewer/index.html?extent=-117.20,34.055,-117.19,34.06

Di seguito è riportato un esempio di coordinate proiettate:

http://<your portal url>/apps/webappviewer/index.html?extent=-13079253.954115,3959110.38566837,-12918205.318785,4086639.70193162,102113

Di seguito viene mostrato un esempio di stringa Well-Known Text:

http://<your portal url>/apps/webappviewer/index.html?extent=1008562.1255,1847133.031,1060087.7901,1877230.7859,wkt=PROJCS["NAD_1983_HARN_StatePlane_Illinois_East_FIPS_1201",GEOGCS["GCS_North_American_1983_HARN",DATUM["D_North_American_1983_HARN",SPHEROID["GRS_1980",6378137.0,298.257222101]]

Trovare una posizione o una feature con cui aprire la mappa

Per trovare una posizione o una feature utilizzata per aprire la mappa, utilizzare find=. La mappa viene automaticamente ingrandita sul risultato che si avvicina di più ai criteri e un marcatore callout viene aggiunto alla mappa. Per il parametro find è possibile specificare indirizzi su riga singola, indirizzi parziali, ad esempio solo città o solo paese, nomi di luoghi e coordinate latitudine-longitudine e feature in layer per ricerche (come 1916352001 per un numero di identificazione particella (PIN, Parcel Identification Number)). Di seguito è riportato un esempio:

http://<your portal url>/apps/webappviewer/index.html?find=380 new york street, redlands, ca
Attenzione:

Tutti i parametri di interrogazione devono essere codificati e il widget per la ricerca deve essere abilitato nell'app per poter utilizzare questo parametro.

Aggiungi un punto

Per aggiungere un punto alla mappa, utilizzare marker=<x>,<y>. Il punto viene aggiunto alla mappa nelle posizioni x, y specificate. È inoltre possibile includere le seguenti proprietà facoltative:

  • <wkid>: riferimento spaziale delle coordinate x,y aggiunte alla mappa. Se non si include un valore WKID, vengono utilizzate le coordinate GCS.
  • <encoded title>: titolo del popup del punto. Se non si include un titolo, il popup sarà vuoto.
  • <encoded icon URL>: simbolo del punto. Se non si include un simbolo, viene utilizzato il simbolo di un marcatore blu.
  • <encoded label>: etichetta accanto al simbolo del punto.

Considerare quanto segue:

  • <x>,<y> sono obbligatori.
  • Assicurarsi di codificare i parametri titolo, icona ed etichetta.
  • È necessario aggiungere le proprietà nel seguente ordine: marker=<x>,<y>,<wkid>,<encoded title>,<encoded icon URL>,<encoded label>.
  • Come separatori è possibile utilizzare le virgole o i punti e virgola. Utilizzare il punto e virgola se i numeri utilizzano la virgola per i decimali.
  • Utilizzare valori vuoti. Non utilizzare spazi. Ad esempio, se si desidera specificare un'etichetta ma nessuna delle altre proprietà facoltative, aggiungere l'etichetta come sesto parametro e valori vuoti per gli altri (x;y;;;;label).
  • Se si desidera che nella mappa venga applicato lo zoom avanti (oltre alla centratura sul punto), includere il parametro level=.

Di seguito è riportato un esempio:

http://<your portal url>/apps/webappviewer/index.html?marker=-79.234826;38.147884;;Race start and finish;;Grindstone 100 Ultra Marathon&level=7

Eseguire un'interrogazione di feature

Per interrogare una feature ed eseguire lo zoom sulla stessa, è possibile utilizzare una delle seguenti opzioni:

  • query=<layer name>,<field name>,<field value>
  • query=<layer name>, <where clause>
  • query=<layer id>,<field name>,<field value>
  • query=<layer id>, <where clause>
Suggerimento:

Esiste ora un modo per costruire parametri URL in modo interattivo. Aggiungere il widget Condividi nell'app e fare clic su Opzioni di collegamento. Scegliere l'opzione Interroga una feature e applica lo zoom e selezionare il layer, il campo e il valore di campo rispetto al quale eseguire l'interrogazione. Copiare l'URL in Anteprima collegamento contenente i parametri URL specificati. Rimuovere il widget Condividi dall'app se non è più necessario.

Attenzione:

Tutti i parametri di interrogazione rilevano la distinzione tra maiuscole e minuscole e devono essere codificati.

La clausola Where segue lo standard SQL. Ad esempio, quando la clausola Where dispone dell'operazione IN, utilizzare il punto e virgola piuttosto che separare il nome o l’ID del layer dalla clausola Where con virgole, come mostrato di seguito. Il motivo dipende dal fatto che si utilizza una virgola nella clausola Where specificatamente per creare l'elenco di valori quali ('A11', 'A12', 'A13) o ('Charlotte', 'Chicago'). Ciò consente una corretta analisi del parametro di interrogazione per distinguere cosa sono il layer e la clausola Where.

  • query=<layer name>; <where clause>
  • query=<layer id>; <where clause>

Poiché il nome layer può essere modificato, si consiglia di utilizzare l'ID layer nell'interrogazione. È possibile recuperare l'ID layer dall'ID mappa Web come illustrato qui: http://<your portal url>/sharing/rest/content/items/32a83775654249dcae6b8f2eff5d4072/data/?f=pjson

Attenzione:

accertarsi che la mappa Web sia condivisa pubblicamente quando si recupera l'ID layer

Ad esempio, un layer viene aggiunto alla mappa individualmente come mostrato di seguito in formato JSON. L'ID layer è Census_8491, il nome campo è POP2000 e il valore campo è 1211537. È possibile eseguire le seguenti interrogazioni:

id: "Census_8491",
layerType: "ArcGISFeatureLayer",
url: "http://sampleserver6.arcgisonline.com/arcgis/rest/services/Census/MapServer/3",
visibility: true,
opacity: 1,
mode: 1,
title: "Census - states",

http://<your portal url>/apps/webappviewer/index.html?id=da80a448ac9246148da0811bddc18c94&query=Census_8491,POP2000,1211537
http://<your portal url>/apps/webappviewer/index.html?id=da80a448ac9246148da0811bddc18c94&query=Census_8491,POP2000=1211537

È anche possibile eseguire interrogazioni rispetto ai campi stringa o ObjectID.

http://<your portal url>/apps/webappviewer/index.html?id=da80a448ac9246148da0811bddc18c94&query=Census_8491,STATE_NAME,California
http://<your portal url>/apps/webappviewer/index.html?id=da80a448ac9246148da0811bddc18c94&query=Census_8491,STATE_NAME='California'
http://<your portal url>/apps/webappviewer/index.html?id=da80a448ac9246148da0811bddc18c94&query=Census_8491,OBJECTID,1

Spesso un layer viene aggiunto come un gruppo di Map Service. Per interrogare un sublayer in un gruppo, utilizzare invece <layer id_sublayer id> come ID layer. Prendendo come esempio il seguente layer, l'ID layer è Census_3217 e l'indice ID sublayer è 3. L'ID layer per il sublayer deve essere Census_3217_3. È possibile eseguire le seguenti interrogazioni:

id: "Census_3217", layerType: "ArcGISMapServiceLayer", url: "http://sampleserver6.arcgisonline.com/arcgis/rest/services/Census/MapServer", visibility: true, opacity: 1,
title: "Census"

http://<your portal url>/apps/webappviewer/index.html?id=da80a448ac9246148da0811bddc18c94&query=Census_3217_3,POP2000,1211537
http://<your portal url>/apps/webappviewer/index.html?id=da80a448ac9246148da0811bddc18c94&query=Census_3217_3,POP2000=1211537
http://<your portal url>/apps/webappviewer/index.html?id=da80a448ac9246148da0811bddc18c94&query=Census_8491;STATE_NAME in ('California', '')

Cambia impostazioni locali

Per cambiare la lingua dell'app, utilizzare locale=<language code>. Sono supportati i seguenti codici lingua: ar, cs, da, de, en, el, es, et, fi, fr, he, it, ja, ko, lt, lv, nb, nl, pl, pt-br, pt-pt, ro, ru, sv, th, tr, zh-cn, vi, zh-hk, and zh-tw.

Di seguito è riportato un esempio:

http://<your portal url>/apps/webappviewer/index.html?locale=fr

Controllare quando attivare il layout per dispositivi mobili

L'app supporta due stili di layout basati sulle dimensioni dello schermo. Uno per il desktop e uno per dispositivi mobili. Quando l'altezza o la larghezza di uno schermo è minore di 600 pixel, viene applicato automaticamente il layout per dispositivi mobili. Tuttavia, ciò può generare un comportamento imprevisto quando l'app è incorporata in un sito Web, ad esempio il popup nel sito Web è associato allo stile di layout per dispositivi mobili. Per controllare lo stile di layout, utilizzare mobileBreakPoint=<pixel number>. Ad esempio, è possibile mantenere lo stile desktop finché le dimensioni dello schermo sono inferiori a 300 pixel come mostrato di seguito:

http://<your portal url>/apps/webappviewer/index.html?mobileBreakPoint=300