Google コード Web サイトのアカウント認証 API で詳述されている ClientLogin インターフェイスを学習しようとしています。
Firefox 3.5pre (知床) とXMLHttpRequestJavascript のオブジェクトを使用してプロセスをたどっています。これが私が持っているものの簡素化されたバージョンです:
<html>
<head>
<title>Test</title>
<script type="text/javascript">
//<![CDATA[
function update() {
var auth_params = "accountType=HOSTED_OR_GOOGLE&Email=val"
+"&passwd=val&service=cl&source=MMA-Learning";
var request = new XMLHttpRequest();
request.open('POST', 'https://www.google.com/accounts/ClientLogin', true);
request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
request.setRequestHeader("Content-Length", auth_params.length);
request.setRequestHeader("Connection", "close");
request.onreadystatechange = function () {
if (this.readyState == 4 && this.status == 200) {
alert ("Request done");
}
};
try {
request.send( auth_params );
} catch (e) {
alert ("Send Exception:\n"+e);
}
}
//]]>
</script>
</head>
<body>
<a href="javascript:update()">Authenticate</a>
</body>
</html>
認証リンクをクリックすると、返されるのはBad Request応答だけです。リクエストヘッダーを調べると、にContent-Type設定されていませんapplication/x-www-form-urlencoded。
Firebug 1.5X を使用してトラフィックを調べています。
今のところ、私がやりたいことは、サンプル リクエストセクションに記載されているリクエストを生成し、サンプル レスポンスセクションに記載されているレスポンスを取得することだけです。そこにたどり着いたら、未読の Google リーダー フィードなど、アカウント固有のデータを取得したいと考えています。