1

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 リーダー フィードなど、アカウント固有のデータを取得したいと考えています。

4

2 に答える 2

-1

「passwd」の「p」は、大文字の「P」ではなく、小さな「p」です

あなたはおそらくそれを理解しました。投稿して答えを見つけたら、答えも投稿すると常に丁寧です。これは、将来、あなたの投稿を見て情報を得る人々を助けます

その「p」を見つけるのに2時間かかりました。これは、Googleが提供したコードが正しくコピーされ、大文字と小文字の間違いがなかったと推測したためです

答えのない質問でいっぱいのインターネットには意味がない

于 2009-07-30T16:23:38.713 に答える