I have a Google Map created with V3 API, and I wish to apply a custom map styles using StyledMapType. However, I find in some browsers the custom style JSON is hitting a character limit in the URI, resulting in a 414 error (such as Firefox 7 on Leopard).
Shortening the JSON solves the problem, but can anybody advise on a solution?
BTW, the JSON is already whitespace compressed!
Thanks
Here is a code example. We have to keep mapStyles within about 1705 characters otherwise the 414 error occurs. Actually, the error still occurs when we zoom in, and I have shorten to 1350 characters to stop the error.
var mapStyles=[{featureType:"road",elementType:"geometry",stylers:[{lightness:100},{visibility:"on"}]},{featureType:"road",elementType:"labels",stylers:[{hue:"#ff7700"},{lightness:12},{saturation:-38},{visibility:"on"}]}];
gMapStyled = new google.maps.StyledMapType(mapStyles, {name: 'Store Locator'});
gMap = new google.maps.Map($('#map-canvas').get(0), {
disableDefaultUI: true,
zoom: 7,
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: new google.maps.LatLng('5.7908968128719565','19.6875')
});
gMap.mapTypes.set('storelocator', gMapStyled);
gMap.setMapTypeId('storelocator');
Here is an example of the 414 error…very long!
NetworkError: 414 Request-URI Too Large - http://mt0.googleapis.com/mapslt/ft?hl=en&lyrs=m%40162244780%7Cs.t%3A3%7Cs.e%3Ag%7Cp.l%3A100%7Cp.v%3Aon%2Cs.t%3A3%7Cs.e%3Al%7Cp.h%3A%23ff7700%7Cp.l%3A12%7Cp.s%3A-38%7Cp.v%3Aon%2Cs.t%3A40%7Cs.e%3Ag%7Cp.v%3Aon%7Cp.s%3A-77%7Cp.l%3A41%2Cs.t%3A4%7Cp.v%3Aoff%2Cs.t%3A21%7Cp.v%3Aoff%2Cs.t%3A18%7Cs.e%3Ag%7Cp.v%3Aon%7Cp.h%3A%23ffaa00%7Cp.s%3A32%2Cs.t%3A17%7Cs.e%3Ag%7Cp.v%3Aon%7Cp.h%3A%23ff8800%7Cp.s%3A20%7Cp.l%3A20%2Cs.t%3A17%7Cs.e%3Al%7Cp.h%3A%23ff8800%7Cp.l%3A6%7Cp.v%3Aon%7Cp.s%3A20%2Cs.t%3A18%7Cs.e%3Al%7Cp.v%3Aon%7Cp.s%3A-100%2Cs.t%3A19%7Cs.e%3Al%7Cp.s%3A-100%7Cp.v%3Aon%7Cp.l%3A31%2Cs.t%3A81%7Cs.e%3Ag%7Cp.g%3A1%7Cp.h%3A%23ffcc00%7Cp.v%3Aon%7Cp.l%3A45%7Cp.s%3A-82%2Cs.t%3A82%7Cs.e%3Ag%7Cp.h%3A%23ffcc00%7Cp.l%3A-2%7Cp.v%3Asimplified%7Cp.s%3A-5%2Cs.t%3A6%7Cs.e%3Ag%7Cp.v%3Aon%7Cp.s%3A-79%2Cs.t%3A1059%7Cp.v%3Aon%7Cp.s%3A-99%2Cs.t%3A40%7Cs.e%3Al%7Cp.v%3Asimplified%7Cp.s%3A-6%2Cs.t%3A37%7Cs.e%3Ag%7Cp.v%3Aoff%7Cos%3A628240961&las=twwvvvtvuvtvvtv,twwvvvtvuvtvvtw,twwvvvtvuvtvvuv,twwvvvtvuvtvvuw,twwvvvtvuvtvvvt,twwvvvtvuvtvvvu,twwvvvtvuvtvvvv,twwvvvtvuvtvvvw,twwvvvtvuvtvvwt,twwvvvtvuvtvvwu,twwvvvtvuvtvvwv,twwvvvtvuvtvvww,twwvvvtvuvtvwtv,twwvvvtvuvtvwvt,twwvvvtvuvtvwvv,twwvvvtvuvvtttt,twwvvvtvuvvtttu,twwvvvtvuvvtttv,twwvvvtvuvvtttw,twwvvvtvuvvttut,twwvvvtvuvvttuu,twwvvvtvuvvttuv,twwvvvtvuvvttuw,twwvvvtvuvvttvt&z=15&src=apiv3&xc=1&style=api%7Csmartmaps&apistyle=s.t%3A3%7Cs.e%3Ag%7Cp.l%3A100%7Cp.v%3Aon%2Cs.t%3A3%7Cs.e%3Al%7Cp.h%3A%23ff7700%7Cp.l%3A12%7Cp.s%3A-38%7Cp.v%3Aon%2Cs.t%3A40%7Cs.e%3Ag%7Cp.v%3Aon%7Cp.s%3A-77%7Cp.l%3A41%2Cs.t%3A4%7Cp.v%3Aoff%2Cs.t%3A21%7Cp.v%3Aoff%2Cs.t%3A18%7Cs.e%3Ag%7Cp.v%3Aon%7Cp.h%3A%23ffaa00%7Cp.s%3A32%2Cs.t%3A17%7Cs.e%3Ag%7Cp.v%3Aon%7Cp.h%3A%23ff8800%7Cp.s%3A20%7Cp.l%3A20%2Cs.t%3A17%7Cs.e%3Al%7Cp.h%3A%23ff8800%7Cp.l%3A6%7Cp.v%3Aon%7Cp.s%3A20%2Cs.t%3A18%7Cs.e%3Al%7Cp.v%3Aon%7Cp.s%3A-100%2Cs.t%3A19%7Cs.e%3Al%7Cp.s%3A-100%7Cp.v%3Aon%7Cp.l%3A31%2Cs.t%3A81%7Cs.e%3Ag%7Cp.g%3A1%7Cp.h%3A%23ffcc00%7Cp.v%3Aon%7Cp.l%3A45%7Cp.s%3A-82%2Cs.t%3A82%7Cs.e%3Ag%7Cp.h%3A%23ffcc00%7Cp.l%3A-2%7Cp.v%3Asimplified%7Cp.s%3A-5%2Cs.t%3A6%7Cs.e%3Ag%7Cp.v%3Aon%7Cp.s%3A-79%2Cs.t%3A1059%7Cp.v%3Aon%7Cp.s%3A-99%2Cs.t%3A40%7Cs.e%3Al%7Cp.v%3Asimplified%7Cp.s%3A-6%2Cs.t%3A37%7Cs.e%3Ag%7Cp.v%3Aoff&callback=_xdc_._5mgxkk&token=13463
What worked for us was to shorten the mapStyles object at 1350 characters or less – then the error disappeared. But no means ideal but the only solution we could find.