Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 9023145
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 16, 20262026-06-16T05:41:30+00:00 2026-06-16T05:41:30+00:00

Is it possible to access google api’s (calendar v3) from a local html file

  • 0

Is it possible to access google api’s (calendar v3) from a local html file (with javascript)?
I want to open c:\temp\gsotto\gsotto.htm in my browser instead of serving the file through IIS.

It works if I serve my file from

http://localhost/ 

through a webserver.
In the google api console i have a “Client ID for web applications” with:

Redirect URIs:  http://localhost
JavaScript origins:     http://localhost

and a “Simple api access” Key for browser apps (with referers)

Firebug shows me this when accessing through http://localhost/gsotto/gsotto.htm
GET http://localhost/gsotto/gsotto.htm
GET https://apis.google.com/js/client.js?onload=handleClientLoad
GET https://apis.google.com/_/apps-static/_/js/gapi/client....cb=gapi.loaded_0
GET https://ssl.gstatic.com/accounts/o/...-postmessagerelay.js
GET https://accounts.google.com/o/oauth2/auth?client_id=.....&authuser=0
GET https://ssl.gstatic.com/accounts/o/....-postmessage.js

and this when access through c:\...
GET https://apis.google.com/js/client.js?onload=handleClientLoad
GET https://apis.google.com/_/apps-static/_/js/gapi/client.....cb=gapi.loaded_0
GET https://ssl.gstatic.com/accounts/o/.....-postmessagerelay.js
and nothing more....

do i need to use other settings in the google api console for this to work?


<!DOCTYPE html>
<html>
  <head>
    <meta charset='utf-8' />
  </head>
  <body>
    <!--Add a button for the user to click to initiate auth sequence -->
    <button id="authorize-button" style="visibility: hidden">Authorize</button>
    <script type="text/javascript">
        // google calendar id
      var calId = "....";

      var clientId = "..."; // oAuth2 webapp
      var apiKey = "....";// Key for browser apps (with referers) 

      // google authentication scopes
      var scopes = 'https://www.googleapis.com/auth/calendar';
              //https://www.googleapis.com/auth/calendar.readonly

      // Use a button to handle authentication the first time.
      function handleClientLoad() {
          console.log('handleClientLoad');
        gapi.client.setApiKey(apiKey);
        window.setTimeout(checkAuth,1);
      }

      function checkAuth() {
          console.log('checkAuth');
          try {

        gapi.auth.authorize({client_id: clientId, scope: scopes, immediate: true}, handleAuthResult);
          }
          catch(e)
          {
              console.log('e');
              console.log(e);
          }
      }


      function handleAuthResult(authResult) {

          console.log('handleAuthResult');
        var authorizeButton = document.getElementById('authorize-button');
        if (authResult && !authResult.error) {
            console.log('result ok');
          authorizeButton.style.visibility = 'hidden';
          makeApiCall();
        } else {
          console.log('authresult null or error');
          console.log(authResult);
          authorizeButton.style.visibility = '';
          authorizeButton.onclick = handleAuthClick;
        }
      }

      function handleAuthClick(event) {
        console.log('handleAuthClick');
        gapi.auth.authorize({client_id: clientId, scope: scopes, immediate: false}, handleAuthResult);
        return false;
      }

function makeApiCall() {
        console.log('makeApiCall');
  gapi.client.load('calendar', 'v3', function() {
    var request = gapi.client.calendar.events.list({
      'calendarId': calId
    });

    request.execute(function(resp) {
        console.log('result:');
        console.log(resp);

      for (var i = 0; i < resp.items.length; i++) {
        var li = document.createElement('li');
        li.appendChild(document.createTextNode(resp.items[i].summary));
        document.getElementById('events').appendChild(li);
      }
    });
  });
}
    </script>
    <script src="https://apis.google.com/js/client.js?onload=handleClientLoad"></script>
    <div id="content">
    <ul id="events"></ul>
    </div>
  </body>
</html>
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-16T05:41:31+00:00Added an answer on June 16, 2026 at 5:41 am

    Depending on your browser you will find that no AJAX is possible when running from the file:// protocol for cross-site (or cross-protocol) reasons. The GETs you see working are not XHR/AJAX but <script> tags so the answer is No for most modern browsers. See the discussion here. You might get it working if you run Chrome with --allow-file-access-from-files and --disable-web-security (link).

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I want to access some data from Google maps. the only way possible is
Is it possible to access the Data Purge Tool from the Valence API?
My application using JavaScript to connect to get access the Google drive API.(see https://developers.google.com/drive/quickstart-js
Possible Duplicate: Android API for Google Drive? I want to synchronize a single small
I'm having a strange problem with the Google Calendar API (through PHP with Zend_Gdata.)
I'm implementing a system that require access to Google Places JS API . I've
Possible Duplicate: Remove marker in Google Maps Api v3 I'm trying to give users
From my understanding to access the gmail API using XOAUTH authentication it is required
I would like to write a script that would access the google api pass
Possible Duplicate: Google Maps JS API v3 - Simple Multiple Marker Example On my

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.