Check Connectivity to Google Maps API (China Great Firewall) - javascript

I'm currently working on a platform that will be launched all over the world and I am working in Shanghai China and as you might know there is a very big Firewall policy here.
The site contains a custom map view created with the Google Maps API this is because Google allows a lot of nice features to change the look and feel of the map.
But now I'm running into a problem where if a user wants to access the site without VPN the whole page where the map is located slows down,crashes and breaks my login procedure.
Here are the errors showing in the Console View:
GET https://maps.googleapis.com/maps/api/js?key=1010101010101&sensor=true net::ERR_CONNECTION_TIMED_OUT
Uncaught ReferenceError: google is not defined
I want to know if there is a way to check if I have a connection to the Google Maps API before executing the code?
Cheers,
Koen

Checking if the API is loaded, as Keith links above, is a good way to see if the loading has had any trouble.
To minimize problems loading the API in China the Maps API FAQ recommends loading the API from http://maps.google.cn/maps/api/js and not using https.

Related

2018 This page can't load Google Maps correctly

Sounds like duplicate? but no, this is happened since a week ago for all websites in the world that used google maps API, even I searched in google: google maps api js fiddle:
http://jsfiddle.net/salman/4mtyu/
https://jsfiddle.net/user2314737/x4gM4/
https://jsfiddle.net/user2314737/2d5qum53/
http://jsfiddle.net/chufol/T78Hd/
https://jsfiddle.net/user2314737/36tgzztv/
See? none of them working, all got message from google:
This page can't load Google Maps correctly
I searched in Stack Overflow, all topics are old and not solve this problem. But look like google need to an api key to work, right?
So in my web site I have api key but I got this error:
Google has disabled use of the Maps API for this site.
And there is a link to enable google maps api, but after I enable api key, still have same error, any solution?
Take a look at this maps didn't load correctly.
This error has become a lot more common since Google Maps started requiring an API key on June 22, 2016 (after about 10 years of allowing keyless use). If you started using Google Maps on your website on or after that date then you will need to sign up for and implement an API key (older users still do not need a key).
Also, You must now enter your billing information in the Console.
Here is official Google guide.
To use the Maps JavaScript API, you must get an API key which you can then add to your app or website. The API key is used to track API requests associated with your project for quota, usage, and billing. To learn more about API keys, see the API Key Best Practices and the FAQs.

Google maps javascript api 503 when loading tiles (with captcha)

My company's app is using google maps javascript api (v3) and today some people in the office have started seeing missing tiles in our app's map.
I checked the console and there's indeed a 503 error. When opening the failing url from the browser I see a page with a captcha and a message by google saying that there's too much traffic from my ip and offers a captcha.
Clicking on the captcha doesn't solve the problem in my app though...
My question is:
I understand what the problem is, but is there anyway to get around it? Why does google think i'm a bot? I checked our quotas on the api console and we're not passing them..
Thanks,
Uri
Chances are that this 503 http error is indeed your quota exceed, it's just that google statistics have not been updated yet... or you fired to many per second
Another reason it could be that you made too many incorrect requests or some other reason that got you blocked.
Try again tomorrow and chances are it will work again just don't fire to many requests.

Google App Engine: API is not being called in deployed version

I am building a web app with Google AppEngine. I am using the Google Maps, Google Places, and Geocoding API's.
In the local version, everything works as it should. When the page is loaded, the user's current location is indicated and all the nearby stores are marked with markers on the map that appears on the webpage.
In the deployed version, only the map loads. I checked the console developer's log on Google and I noticed that a request to the Google Maps API is made, but not to the Google Places or Geocoding API's. I'm really confused/not sure what's going on. I tried browsing through some old questions, but I can't figure out how to fix this. If anyone could offer a solution, I would greatly appreciate it.
** I have made sure that the deployed version is the most recent version. It 100% works on localhost, but doesn't on the deployed webpage.
Edit: the API's aren't being called because they don't work on "insecure origins". I've configured the app.yaml under handlers to be
- url: /.*
script: IGNORED
secure: always
but it doesn't seem to make a difference.
You don't have to separately call Google Places and Geocoding APIs. All those are included in the Google Map API. If you want to choose on what you should include in your map click here to refer the API on customizing your map.
By default, Google App Engine doesn't support secure connections, which both the Geolocation & Google Places API's need, in order to be called. However, Google App Engine can support secure connections. The local host does support secure connections, which is why the local version of my app was working.
To properly support secure connections after deploying the app, just add in the parameter "secure: always" in the app.yaml file under Handlers!

Rails using Google Places web API (key not working)

I am trying to use Google Places address autocomplete in a rails app.
I am using this example from google and trying it out on JSFiddle works fine. I change to my API Key and then doesnt work.
I tried in my rails app in development and in production getting the same result.
As soon as i write something the text box freezes and a little 'i' appears. (not clickable)
I created and tried 'browser api key' and 'server api key' with no luck.
I set my domain as requested * .mydomain.com/* and it didnt work
I enabled
- Google Maps JavaScript API
- Google Static Maps API
- Google Maps Embed API
- Google Places API Web Service
- Google Maps Geocoding API
- Google Maps Geolocation API
I added to my layout/application.html.erb file
I am searching through all questions but cant find my case, please help me find a solution or point me in the right direction. Thanks!
Update: In browser console i see
Google Maps API error: RefererNotAllowedMapError https://developers.google.com/maps/documentation/javascript/error-messages#referer-not-allowed-map-error
Your site URL to be authorized: 'mysite'
I have authorized the link exactly as shown in console but its not accepting it.
Solved.
I somehow managed to mix up my API keys in loading 1.&libraries=places and in
2.=initAutocomplete" while I was authorizing my url.
thanks to all specially to #power for reminding me to check the console logs. I know its dumb, but I keep forgetting...

Use of Google Maps JavaScript API v3 in PhoneGap iOS App

I'm experiencing a problem in using the Google Maps JavaScript API v3 for a Cordova PhoneGap based iOS App which, up until a few days ago, was working fine.
As I'm not an Objective-C developer I've purposely picked the Google Maps JavaScript API v3 over the iOS Maps SDK and have, in the Google Developers console, created a project and associated a browser key (set to enable all referrers) with that project.
In the head of the HTML page in my PhoneGap App I have called the Google Map API like so:
https://maps.googleapis.com/maps/api/js?key=MY_APPLICATION_KEY_IS_PASTED_HERE&sensor=false
But when I run the App, despite this having worked without a key in previous versions and now having created a browser key and associating that as part of the call to the Google Maps API, I get the following error message:
Google has disabled use of the MAPS API for this application. The key provided is not a valid Google API key or it is not authorised for the Google Maps JavaScript API v3 on this site.
Can anyone provide any suggestions on what I might be missing/doing wrong and what I could possibly do to resolve this as I need to get the App running again. I've looked through the Google Maps and Developer documentation but can't see anything that would alert me to what I might be doing wrong.
Thanks in advance for any help that anyone out there might be able to provide with this query.
I had the same problem. Solved it by setting up a key as per instruction here:
https://developers.google.com/maps/documentation/javascript/tutorial#api_key
BUT setting the "Referrers" to [NOTHING].
KEY NOTE: I had set it explicitly to "*" and this did NOT work and then edited it beck to be empty. I can't believe the edit back to nothing is necessary but...the default was already blank so and did not initially work so ... maybe try the explicit "edit" to blank if all else fails.

Categories

Resources