2016-03-05 13 views
7

Esiste un modo più semplice per incorporare un'applicazione di Google Earth Engine (javascript) in una pagina Web senza seguire la rotta torturata presentata dallo Google EE demo apps?Incorpora l'applicazione Google Earth Engine nella pagina web

L'ambiente Earth Engine Code consente di sviluppare rapidamente l'app GEE principale. Tuttavia, mi occorrerà 10 volte il tempo necessario per incorporare l'app GEE in una pagina Web rispetto a quanto richiesto per l'app GEE.

Tutte le app demo sembrano richiedere (a) utilizzando Google App Engine, (b) la codifica dell'app GEE in Python, (c) utilizzando il motore di template jinja2 per collegare il codice Python alla pagina Web e (d) alcuni ancora javascript persistente.

Ad esempio, nello Trendy Lights demo, lo Scripter server-side server.py App Engine prende il via e si complica rapidamente. (Anche le demo più semplici seguire questa strada.)

Quando l'utente prima carica l'applicazione nel proprio browser, la loro richiesta viene instradato alla funzione get() nella classe MainHandler dal quadro che stiamo usando , webapp2.

La funzione get() rimanda alla pagina web principale (da index.html) insieme a informazioni il browser ha bisogno di rendere una mappa Earth Engine e gli ID dei poligoni per mostrare sulla mappa. Questa informazione è immessa nel modello index.html tramite un motore di template chiamato Jinja2, che mette le informazioni dal contesto Python nel codice HTML per il browser dell'utente da ricevere.

+0

Basta commentare per vedere se hai trovato una soluzione a questo? – NateH06

risposta

2

Il motivo per cui è complicato è dovuto all'autorizzazione. Le chiamate di Earth Engine devono essere autorizzate contro l'account di Earth Engine di qualcuno. Questo deve essere l'utente finale (vedere: https://github.com/google/earthengine-api/tree/master/demos/client-auth, ma funziona solo se l'utente finale dispone di un account di Earth Engine) o le credenziali dell'applicazione. Se le credenziali dell'applicazione sono state bloccate in javascript, chiunque può rubare quelle credenziali e usarle per fare qualsiasi cosa volessero. Pertanto, ti consigliamo di utilizzare l'instengine server-auth route (https://github.com/google/earthengine-api/tree/master/demos/server-auth) per mantenere le tue credenziali al sicuro.