CodingFirst

C言語、Perl、JavaScript、最近はPythonも。出来上がったものより、プログラムを書くことが好き。あと、スイーツ。

スポンサーサイト

  • このエントリーをはてなブックマークに追加
  • web拍手 by FC2
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PythonでCookieを取得/設定する

  • このエントリーをはてなブックマークに追加
  • web拍手 by FC2

PythonのSimpleCookieを使って、Cookieの取得、設定を試した。

目的としては、
単にCGIで過去にフォームに入れた名前を取得できればよく、
それならSimpleCookieで充分っぽい。

SimpleCookieは、公式ドキュメントの
20.22. Cookie ― HTTPの状態管理 ― Python 2.6.2 documentation
を参考にした。

Pythonで書いたCookieのお試しCGIのソースコードはgistに置いた。
https://gist.github.com/956496

最初にアクセスしたときのスクリーンショット

cgi-cookie-1.png

formに"hoge"と入れてsubmitした後のスクリーンショット

cgi-cookie-2.png

実用上は下のコードにする予定。試してないけど。

#!/usr/bin/env python
import os,cgi,cgitb,Cookie; cgitb.enable()
import datetime
sc=Cookie.SimpleCookie(os.environ.get('HTTP_COOKIE',''))
expires=datetime.datetime.now()+datetime.timedelta(days=1)
name=cgi.FieldStorage().getfirst('name',
  sc.get('name').value if sc.has_key('name') else 'anon')
sc['name']=name
sc['name']["expires"]=expires.strftime("%a, %d-%b-%Y %H:%M:%S GMT")
print "Content-Type: text/html"
print sc.output()
print """ 
<html><body><form method="post">
<input type='text' name='name' value='{0}'/>
<input type='submit' value='submit' />
</form></body></html>""".format(name)
スポンサーサイト


★☆★コメント★☆★

コメントの投稿

Name
Subject
Mail
URI
Comment
Pass
Secret 管理者にだけ表示を許可する

トラックバック

http://iyukki.blog56.fc2.com/tb.php/138-85c47359

 | HOME | 

Search

Recent Entries

Foot Print



Categories

Monthly

Recent Comments

Recent Trackbacks

Profile

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。