G-StorageにOAuth認証(HMAC-SHA1方式)をつけてみた

前々回作ったG-Storageを機能追加した。
 
G-Storage
http://g-storage.appspot.com/
 

OAuth認証(HMAC-SHA1方式)

サーバ側のHMAC-SHA1方式のOAuth認証PHPでやった事あったから、それを移植。
 
OAuthパラメータ受け渡しに対応してるのは、以下の通り。
・Authorizationヘッダ
・GET
・POST
 
Pythonの書き方についてはこの辺を参考に。
 
oauth/signature_method at master from nshah's python-oauth - GitHub
http://github.com/nshah/python-oauth/tree/master/oauth/signature_method
 
Python の OAuth 対応 Twitter ライブラリ (python-twoauth) - trial and error
http://techno-st.net/2009/12/25/python-oauth-twitter-python-twoauth.html
 
TwitterのOAuthを使って90日以上発言してない人をremoveするスクリプト書いた - YAMAGUCHI::weblog
http://d.hatena.ne.jp/ymotongpoo/20091129/1259467189
 

ファイルダウンロード

Flex Fillerでファイルをダブルクリックしたら、ファイルをダウンロードするようにした。
 

バグ修正

ユーザ新規登録のバグ

ユーザ新規登録の際に、UIDが全員1になっていた。
登録してくれた方、ありがとうございます、アカウント消しました、すいません。
 

アップロードのバグ

Flex Fillerでバイナリ(ByteArray)をアップロードする時に最初の8バイトしかアップロード出来てなかったのを修正。
どうやらHTTPServiceではバイナリをアップロード出来ないらしい。
URLLoader+URLRequestを使って、multipart/form-dataでポストするようにした。
これをちょっと変えて使った。
 
HTTPPostBinary class connects your flash program to general webservice ≪ yosuke’s blog
http://blog.ymatsusaka.com/2007/05/20/httppostbinary-class-connects-your-flash-program-to-general-webservice/
 

WSSEのCreated有効範囲のバグ

タイムゾーンの件はまだ未解決。
普通に計算が間違っていた。
昨日認証出来たのが不思議。
 

TODO

OAuth認証(RSA-SHA1方式)で認証。
Flex Fillerの機能強化。