javascript - Using 'Google Maps API' in a Web Worker -


i'm trying load google maps api in javascript web worker, fails load maps library. web worker code looks follows:

importscripts('http://maps.googleapis.com/maps/api/js?libraries=geometry&key=myapikey&sensor=false');  

this fails simple

script error. 

in chrome when try load worker.

i assume in maps library tries access dom. guess. has solution?

edit: opened link above , tried extract+modify it's contents. webworker.js looks this:

var window = {google: {}}; var google = {maps: {}}; (function() {    function getscript(src) {       importscripts(src);     //document.write('<' + 'script src="' + src + '"><' + '/script>');   }    var modules = google.maps.modules = {};   google.maps.__gjsload__ = function(name, text) {     modules[name] = text;   };    google.maps.load = function(apiload) {     delete google.maps.load;     apiload([0.009999999776482582,[[["http://mt0.googleapis.com/vt?lyrs=m@306000000\u0026src=api\u0026hl=de-de\u0026","http://mt1.googleapis.com/vt?lyrs=m@306000000\u0026src=api\u0026hl=de-de\u0026"],null,null,null,null,"m@306000000",["https://mts0.google.com/vt?lyrs=m@306000000\u0026src=api\u0026hl=de-de\u0026","https://mts1.google.com/vt?lyrs=m@306000000\u0026src=api\u0026hl=de-de\u0026"]],[["http://khm0.googleapis.com/kh?v=174\u0026hl=de-de\u0026","http://khm1.googleapis.com/kh?v=174\u0026hl=de-de\u0026"],null,null,null,1,"174",["https://khms0.google.com/kh?v=174\u0026hl=de-de\u0026","https://khms1.google.com/kh?v=174\u0026hl=de-de\u0026"]],[["http://mt0.googleapis.com/vt?lyrs=h@306000000\u0026src=api\u0026hl=de-de\u0026","http://mt1.googleapis.com/vt?lyrs=h@306000000\u0026src=api\u0026hl=de-de\u0026"],null,null,null,null,"h@306000000",["https://mts0.google.com/vt?lyrs=h@306000000\u0026src=api\u0026hl=de-de\u0026","https://mts1.google.com/vt?lyrs=h@306000000\u0026src=api\u0026hl=de-de\u0026"]],[["http://mt0.googleapis.com/vt?lyrs=t@132,r@306000000\u0026src=api\u0026hl=de-de\u0026","http://mt1.googleapis.com/vt?lyrs=t@132,r@306000000\u0026src=api\u0026hl=de-de\u0026"],null,null,null,null,"t@132,r@306000000",["https://mts0.google.com/vt?lyrs=t@132,r@306000000\u0026src=api\u0026hl=de-de\u0026","https://mts1.google.com/vt?lyrs=t@132,r@306000000\u0026src=api\u0026hl=de-de\u0026"]],null,null,[["http://cbk0.googleapis.com/cbk?","http://cbk1.googleapis.com/cbk?"]],[["http://khm0.googleapis.com/kh?v=86\u0026hl=de-de\u0026","http://khm1.googleapis.com/kh?v=86\u0026hl=de-de\u0026"],null,null,null,null,"86",["https://khms0.google.com/kh?v=86\u0026hl=de-de\u0026","https://khms1.google.com/kh?v=86\u0026hl=de-de\u0026"]],[["http://mt0.googleapis.com/mapslt?hl=de-de\u0026","http://mt1.googleapis.com/mapslt?hl=de-de\u0026"]],[["http://mt0.googleapis.com/mapslt/ft?hl=de-de\u0026","http://mt1.googleapis.com/mapslt/ft?hl=de-de\u0026"]],[["http://mt0.googleapis.com/vt?hl=de-de\u0026","http://mt1.googleapis.com/vt?hl=de-de\u0026"]],[["http://mt0.googleapis.com/mapslt/loom?hl=de-de\u0026","http://mt1.googleapis.com/mapslt/loom?hl=de-de\u0026"]],[["https://mts0.googleapis.com/mapslt?hl=de-de\u0026","https://mts1.googleapis.com/mapslt?hl=de-de\u0026"]],[["https://mts0.googleapis.com/mapslt/ft?hl=de-de\u0026","https://mts1.googleapis.com/mapslt/ft?hl=de-de\u0026"]],[["https://mts0.googleapis.com/mapslt/loom?hl=de-de\u0026","https://mts1.googleapis.com/mapslt/loom?hl=de-de\u0026"]]],["de-de","us",null,0,null,null,"http://maps.gstatic.com/mapfiles/","http://csi.gstatic.com","https://maps.googleapis.com","http://maps.googleapis.com",null,"https://maps.google.com","https://gg.google.com","http://maps.gstatic.com/maps-api-v3/api/images/","https://www.google.com/maps",0],["http://maps.gstatic.com/maps-api-v3/api/js/21/3/intl/de_all","3.21.3"],[141790386],1,null,null,null,null,null,"",["geometry"],null,0,"http://khm.googleapis.com/mz?v=174\u0026","aizasydqi59vejsizbm-afmedbszvsockqob5a8","https://earthbuilder.googleapis.com","https://earthbuilder.googleapis.com",null,"http://mt.googleapis.com/vt/icon",[["http://mt0.googleapis.com/vt","http://mt1.googleapis.com/vt"],["https://mts0.googleapis.com/vt","https://mts1.googleapis.com/vt"],null,null,null,null,null,null,null,null,null,null,["https://mts0.google.com/vt","https://mts1.google.com/vt"],"/maps/vt",306000000,132],2,500,[null,"http://g0.gstatic.com/landmark/tour","http://g0.gstatic.com/landmark/config",null,"http://www.google.com/maps/preview/log204","","http://static.panoramio.com.storage.googleapis.com/photos/",["http://geo0.ggpht.com/cbk","http://geo1.ggpht.com/cbk","http://geo2.ggpht.com/cbk","http://geo3.ggpht.com/cbk"]],["https://www.google.com/maps/api/js/master?pb=!1m2!1u21!2s3!2sde-de!3sus!4s21/3/intl/de_all","https://www.google.com/maps/api/js/widget?pb=!1m2!1u21!2s3!2sde-de"],null,0,0,"/maps/api/js/applicationservice.getentitydetails",0], loadscripttime);   };      importscripts(     'http://maps.gstatic.com/maps-api-v3/api/js/21/3/intl/de_all/main.js'     , 'http://maps.gstatic.com/maps-api-v3/api/js/21/3/intl/de_all/geometry.js'     );  })(); 

but still results in 'script error.'.

google client api map, drive etc needs dom element can not use map api in web worker. had similar problem in past after hours of research confirmed can not done atleast not @ time.her few thing need know web wroker.

there few objects can have access in web workers:

xmlhttprequest, json, worker, navigator, location,set , clear timeout, import scripts, set , clear interval.

the window or parent ,localstorage objects not accessible web worker.

for more details can check this link.


Comments

Popular posts from this blog

c# - Validate object ID from GET to POST -

node.js - Custom Model Validator SailsJS -

php - Find a regex to take part of Email -