0

Google Fit API を使用して HTTP 呼び出しを実行している IIS 7 でホストされている Web アプリがあります。POST を正常に送信し、アクセス トークンを取得できます。その後、次の URI に対して GET を実行します。

" https://www.googleapis.com/fitness/v1/users/me/dataSources/raw:com.google.weight:com.google.android.apps.fitness:user_input/datasets/00-1427209862000000000 "

リクエストを作成してレスポンスを確認する方法は次のとおりです。

        request = (HttpWebRequest)WebRequest.Create(uri);
        request.Method = "GET";
        request.ContentLength = 0;
        request.Accept = "application/json";
        request.Headers.Add("Authorization", "Bearer " + dict["access_token"]);
        response = (HttpWebResponse)request.GetResponse();
        respStream = response.GetResponseStream();
        sResponse = new StreamReader(respStream).ReadToEnd();
        respStream.Close();
        Response.Write(sResponse);

ホスト サーバーのブラウザーでこのアプリを実行すると、json オブジェクトが正常に取得されます (期待する json ではありませんが、それは別の問題です)。ただし、リモート クライアントでサイトにアクセスしようとすると、応答を取得しようとすると を指す 403 エラーが発生します。何か案は?

4

2 に答える 2

0

それはおそらく、access_token値をどのように取得したかによって異なります。

アクセス トークンを取得してからどのくらいでこのリクエストを行っていますか? 1 時間しか有効でないため、更新トークンを使用して新しいトークンをフェッチする必要がある場合があります。

この質問へのアクセス/リフレッシュ トークンに関するリソースがいくつかあります。

Access_token が期限切れになると、Google OAuth2 Refresh_token が期限切れになります

于 2015-04-27T02:59:00.177 に答える