2011-12-22 17 views
1

私は現在、GoogleリーダーのためのAPIを開発しようとしていると私はトークンを取得しようとしているとき、次のエラーが生成されている:Googleトークンがトークンを取得しようとしたときにエラー401を返すのはなぜですか?

System.Net.WebException: The remote server returned an error: (401) Unauthorized. 
    at System.Net.HttpWebRequest.GetResponse() 

は、最初のiは、セッションを取得しています...とこれは完全に機能します。その後、私はトークンを取得するために呼び出されて、次の方法:

public String setToken() 
{ 
    HttpWebResponse response; 
    HttpWebRequest request; 
    cookie = new Cookie("SID", this.sessionID, "/", ".google.com"); 
    String url = "http://www.google.com/reader/api/0/token"; 

    request = (HttpWebRequest)WebRequest.Create(url); 
    request.Method = "GET"; 
    request.CookieContainer = new CookieContainer(); 
    request.CookieContainer.Add(this.cookie); 

    response= (HttpWebResponse)request.GetResponse(); 
    using (var stream = response.GetResponseStream()) 
    { 
     StreamReader r = new StreamReader(stream); 
     this.token = r.ReadToEnd(); 
    } 
    return this.token; 
} 

は、例外は、この行に生成されている:

response= (HttpWebResponse)request.GetResponse(); 

誰もがこのエラーをしてください引き起こしている可能性があります知っているのでしょうか?

PS。私は質問を読む:Why am I getting a 401 (Unauthorized) error when POSTing to Google Reader API?しかし、彼は投稿しようとしたときにこのエラーが発生していた。

答えて

2

Googleはエリック・マンによると、変更されています:

を「結局のところ、GoogleはリーダーのAPIの認証部分を変更した今、代わりにあなたがリクエストを作るクッキーにSIDを渡すのでは。もともとSIDで渡された「認証」キーを使用して認証ヘッダーを設定します。

Source

関連する問題