Vytvořil jsem aplikaci v ExpB Dev Edition 1.18, která obsahuje widget Analýza. Widget jsem nasměroval na vlastní GP nástroj hostovaný na mém ArcGIS Serveru 11.5, což je mírně upravený nástroj Zip Clip and Ship pro extrakci dat.
Na localhostu aplikace funguje skvěle a vše pracuje, jak má. Po nasazení na testovací server, když spustím ten GP nástroj, proběhne úspěšně, ale když kliknu na výstupní výsledek, vyzve mě k přihlášení do ArcGIS Online (viz screenshot: když kliknu na pole zvýrazněné červeně, objeví se výzva k přihlášení). Pokud kliknu na Zrušit, mohu pokračovat k výsledku nástroje a stáhnout si data, ale vůbec nechápu, PROČ je vyžadováno přihlášení do AGOL, když nic na nástroji to nevyžaduje. Webová mapa, kterou aplikace používá, je sdílená s veřejností, GP nástroj je zcela veřejný a webový server je také plně veřejný. Použil jsem OAuth 2.0 app credential pro aplikaci a dal jí přístup k webové mapě.
V Dev Tools jsem si všiml tohoto volání z testovacího webového serveru:
https://MY-ORG.arcgis.com/sharing/rest/content/users/null?f=json&num=1
Ve srovnání se stejným požadavkem z localhostu, který zdá se přidává token:
https://MY-ORG.arcgis.com/sharing/rest/content/users/cba70c03a34a8ce4750407b89d9073c1?f=json&num=1&token=asnc7i7ZShdjjPzyb5PWvFA..mxSrq9YnOU-5qUcSIQnrDu5PbqSTDEJH5BMrxJHH9VnkAfcANp2Qyk5THNs86g-zYIuCRigKMJMPXQBMFvhQhdfEZU8UdjDyz-9wxjAvPbXi7HumTY_n70PpbWGG9ZVSTGoeUIaCrpotAFTz3vLnj9BHxS7IA0346mqhHyTNWaJ9CV957J7atEBkGdMW8QoT70tXMqs5BMY-zVTtmsmbVuHut_fcHGPOXOvqUUD_CWTEAiBYToYHSxjw6_qnqE4r2tRem0wcbdrua9OvHQWV7Yj2
Znamená to tedy, že veřejná aplikace nemůže vygenerovat token pro použití ve widgetu? Zkoušel jsem použít AI k řešení problému a řeklo mi to, že výstupní složka GP nástroje může vyžadovat token pro přístup k výstupním datům a aplikace se možná obrací na AGOL, aby získala token, protože tam mám vygenerované ClientID, na rozdíl od Enterprise Portalu. Ale stále nechápu, proč by GP nástroj vyžadoval token pro přístup.
Máte nějaké nápady, proč se toto chování objevuje a jak ho odstranit? Aplikace je určena pro veřejnost stejně jako nástroj, takže nechci, aby se při používání aplikace objevovaly výzvy k přihlášení.