iPhoneで撮った写真なんかとちょっとだけプログラム。世の中ってば自分の知らないことばかり。いろいろとりあえずかじってみる。
2: Google App Engine for Python でUsersライブラリを使ってみる。
前回からだいぶ時間が空いてしまいました><
趣味のひとつとして、無料で遊べるGoogleAppEngineでプログラミングの勉強をしていきます。まったくわかんない状態からなんとか頑張ります。今回はUsersライブラリについて。
Google App Engine はUsersライブラリを利用すると Google Acountと連携できます。
Googleの解説ページを見ながらさっそくやってみます。
http://code.google.com/intl/ja/appengine/docs/python/gettingstarted/usingusers.html
Userライブラリはローカルの場合はテスト用の動作になるので注意が必要です。
#usersライブラリを使えるようにするためにインポートする。
from google.appengine.api import users
from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import run_wsgi_app
class MainPage(webapp.RequestHandler):
def get(self):
#get_current_user()はGoogleにログインしていればUserオブジェクトを返す。
#ログインしてなければNoneを返す。
user = users.get_current_user()
if user:
#ログインしている場合
self.response.headers['Content-Type'] = 'text/plain'
#user.nickname()はニックネームです。
#アカウントのメールアドレスとアプリケーションのドメインが一致しているかどうかで値が変わる。
self.response.out.write('Hello, ' + user.nickname())
else:
#ログインしていない場合はログインページへとリダイレクトする。
#self.request.uriを指定することで、ログイン後にこのページへと戻ってくる。
self.redirect(users.create_login_url(self.request.uri))
application = webapp.WSGIApplication(
[('/', MainPage)],
debug=True)
def main():
run_wsgi_app(application)
if __name__ == "__main__":
main()
Userには次のメソッドがあります。
- nickname()
- email()
- user_id()
nickname()はアプリのドメインとメールアドレスのドメインが同一かどうかで返す値が変わります。同一の場合は@の左側のみ、異なる場合はメールアドレス全体が返ってきます。
email()はメールアドレスが返ってきます。
user_id()は一意のIDを返します、これはユーザがアドレスを変更した場合でも変更されません。
Usersライブラリを利用すると、簡単にGoogleAcountを利用したサービスの作成が可能となります。
| Print article | This entry was posted by admin on 2010年7月13日 at 1:14 AM, and is filed under GoogleAppEngine. Follow any responses to this post through RSS 2.0. You can leave a response or trackback from your own site. |