Frage

Swing-Thick-Client als Front-End und Google App Engine (Java one) als Back-End

Ich mag eine Multi-User-Client-Server-Lösung mit Java machen.

Das Problem ist, dass GAE nur webbasierte Formulare für die Anmeldung und aus bietet, so gibt es keine triviale Weise zu verwenden Google-Funktionen in einem Thick-Client-Konten.

Können Sie einige Ratschläge / Hinweise / Ideen geben, wie eine Thick-Client-Login und Logout von einer GAE Webapp erlauben?

War es hilfreich?

Lösung

Es gibt einen Weg für Client-Anwendungen gegen Google-Konten zu authentifizieren, aber ich weiß nicht, ob das Token Sie erhalten zurück zu AppEngine weitergegeben werden. Siehe: Clientlogin für installierte Anwendungen

Andere Tipps

Es tut mir leid, ich kann Ihnen nur indirekt beantworten. Es ist möglich, eine App anmelden auf appspot.com mit einem Google-Konto. Sie müssen nur ein Browser würde, alles tun, auch ein paar Kekse zu halten und kontaktieren mehrere Server, wie sie Sie rund um die Beine.

Ich spielte mit diesem für ein totes Projekt vor ein paar Monaten und mit einem Shell-Skript am Ende, die meist cURL läuft eingeloggt sein. Vielleicht könnten Sie davon nehmen, was Sie brauchen.

#!/bin/bash

my_app="set-this-to-my-app-id"
url="http://$my_app.appspot.com"
curl='curl --cookie-jar cookies'

if [ -z "$EMAIL" -o -z "$PASS" ]; then
    echo -n 'Email: '
    read EMAIL
    echo -n 'Pass: '
    read PASS
fi

rm -f cookies auth

echo 'Login'
$curl https://www.google.com/accounts/ClientLogin --output auth \
      -d "Email=$EMAIL" -d "Passwd=$PASS" \
      -d accountType=HOSTED_OR_GOOGLE     \
      -d source=$my_app                   \
      -d service=ah

. auth # XXX Be careful here. The output of the above
       # command happens to be Bash syntax too!
rm -f auth

echo 'Logging into app and getting cookie'
$curl "$url/_ah/login?continue=$url/console/&auth=$Auth"

echo
echo 'Example POST query'
$curl -X POST --cookie cookies "$url/some/path" -d 'foo=bar'

echo
rm -f cookies

wie von @ Jason DeFontes die Clientgenehmigungsverfahren dieses Problem anspricht.

als minimal-Effort alternativen Ansatz, könnten Sie die Web-basierte (html) bildet in Ihre Thick-Client einzubetten, dh eine Java-Komponente verwenden, die HTML-Rendering unterstützt (wie ein JEditorPane mit einem HTMLEditorKit installiert ist) und präsentieren diese Komponente in Ihrem Swing app -. zumindest die Benutzer nicht hin- und her zwischen Ihrer Anwendung und dem Browser wechseln müssen diese Art und Weise

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top