私は https://developers.google.com/analytics/solutions/articles/hello-analytics-api チュートリアルを実行して、Googleアナリティクスからプログラムでデータを取得して実行しようと試みてきました。
サンプルファイルを正確にコピーしましたが、Chromeのlocalhostを介してそれらにアクセスすると、JavaScriptコンソールで次のエラーが表示され、about:blank
にリダイレクトされます。
Refused to display 'https://accounts.google.com/o/oauth2/auth?client_id=363192057646-fbj7q1oais...%2Flocalhost&response_type=token&state=327475409%7C0.2024869166&authuser=0' in a frame because it set 'X-Frame-Options' to 'SAMEORIGIN'.
あらゆる調整を試みましたが、このエラーを解消することはできません。誰かが助けてくれることを願っています(または実際に、Google Analytics APIにアクセスするためのシンプルで実用的なJavascriptの例を紹介してください)。
Oauth Settings。これはJavaScriptを認証する場所である必要があります。]で、Google APIコンソールの Authorized JavaScript origins urlを確認してください。
昨日同じ問題が発生していましたが、クレデンシャルで間違ったクライアントIDを使用していることに気付きました。
API&auth> Credentialsで「WebアプリケーションのクライアントID」を作成したかどうかを再確認する必要があります。そして、そのクライアントIDを使用します。
私の場合、間違って最初に「サービスアカウント」を作成し、そのクライアントIDを使用しました。それから私は間違いに気付き、「Webアプリケーション」を作成し、hello_analytics_api_v3_auth.jsのクライアントIDを置き換えました( https://developers.googleのチュートリアルに従って) .com/analytics/solutions/articles/hello-analytics-api )。
ところで、パブリックAPIアクセスキーを作成することを忘れないでください。
EDIT:使用している場合 googleの例 次の機能を修正します。
function handleAuthResult(authResult) {
if (authResult) {
gapi.client.load('analytics', 'v3', handleAuthorized);
} else {
handleUnauthorized();
}
}
Ifステートメントで、次のように変更します。
if (authResult && !authResult.error)
したがって、次のようになります。
function handleAuthResult(authResult) {
if (authResult && !authResult.error) {
gapi.client.load('analytics', 'v3', handleAuthorized);
} else {
handleUnauthorized();
}
}
同僚がバグを発見し、それを修正するために プルリクエスト を作成しました。これで問題が解決することを願っています。私のためにソートされました;-)
オンラインで見つけたFusionテーブルの例でも同じ問題が発生していました。
オンラインで見つけた答えはまったく役に立ちませんでしたが、最終的に次のように問題を解決しました。
エラーとアクセスしようとしているURLを示すChromeでdevコンソールを開き、新しいタブでUrlを開きます。
ページにこれが表示されます。
400. That’s an error.
Error: invalid_request
Parameter not allowed for this message type: client_secret
だから私はコードを編集しました:
function auth(immediate) {
gapi.auth.authorize({
client_id: clientId,
<!--client_secret: clientSecret,-->
scope: scopes,
immediate: immediate
}, handleAuthResult);
}
出来上がり(:
このエラーメッセージは何度も表示されました。ほとんどの場合、私は一貫してGoogle APIを呼び出しました。把握するには、devでURLをクリックします。コンソール。新しいウィンドウが開き、次のようなメッセージが表示されます。
400.
That’s an error.
Error: invalid_scope
Some requested scopes were invalid ...