2016-03-05 11 views
7

Gibt es eine einfachere Möglichkeit, eine Google Earth Engine (JavaScript) -Anwendung in eine Webseite einzubetten, ohne der gequälten Route zu folgen, die von der Google EE demo apps präsentiert wird?Google Earth Engine-Anwendung in Webseite einbetten

Die Earth Engine Code Umgebung macht es schnell und schnell, die Kern-GEE-App zu entwickeln. Allerdings brauche ich 10 Mal mehr Zeit, um die GEE-App in eine Webseite einzubetten als für die GEE-App.

Alle Demo-Anwendungen scheinen (a) mit Google App Engine, (b) die GEE-App in Python, (c) mit jinja2 Templating-Engine, um den Python-Code mit der Webseite zu verknüpfen, und (d) noch einige Verweilendes Javascript.

Zum Beispiel in der Trendy Lights demo, der serverseitige Scripter App Engine startet Dinge aus und es wird schnell kompliziert. (Selbst die einfacheren Demos gehen diesen Weg.)

Wenn der Benutzer zum ersten Mal lädt die Anwendung in ihrem Browser, ihre Anforderung an den get geroutet() Funktion in der MainHandler Klasse von den Rahmen verwenden wir , webapp2.

Die get() Funktion, um die Haupt-Webseite sendet (von index.html) zusammen mit Informationen muss der Browser eine Earth Engine Karte und die IDs der Polygone machen auf der Karte zu zeigen. Diese Informationen werden in die index.html Vorlage über eine Templating-Engine namens Jinja2 injiziert, die Informationen aus dem Python-Kontext in die HTML für den Browser des Benutzers erhält.

+0

Kommentieren, um zu sehen, ob Sie eine Lösung gefunden haben? – NateH06

Antwort

2

Der Grund, warum es kompliziert ist, ist aufgrund der Autorisierung. Die Earth Engine-Aufrufe müssen gegen das Earth Engine-Konto eines Nutzers autorisiert werden. Dies muss entweder der Endbenutzer sein (siehe: https://github.com/google/earthengine-api/tree/master/demos/client-auth, funktioniert aber nur, wenn der Endbenutzer über ein Earth Engine-Konto verfügt) oder die Anmeldeinformationen der Anwendung. Wenn die Anmeldeinformationen der Anwendung nur in der JavaScript steckt, dann kann man diese Anmeldeinformationen stehlen und nutzt sie, alles zu tun, sie wollten. So empfehlen wir die appengine Server-Auth Route mit (https://github.com/google/earthengine-api/tree/master/demos/server-auth) Ihren Anmeldeinformationen sicher zu halten.