tangrams / tangram

WebGL map rendering engine for creative cartography
https://tangram.city
MIT License
2.21k stars 290 forks source link

Firefox assumes that created data blobs (using data Object instead of an URL) are XML, outputs errors #772

Open d3d9 opened 3 years ago

d3d9 commented 3 years ago

TANGRAM VERSION: 0.21.1

ENVIRONMENT: win7 64bit Firefox 84.0.1, win10 64bit Firefox 85.0, (no errors:) win10 64bit Edge 87

TO REPRODUCE THE ISSUE, FOLLOW THESE STEPS:

RESULT:

There are errors at the blob locations: "XML Parsing Error: not well-formed".
Apparently the browser assumes blobs to be XML by default, if no type is given.
Outside of the console, I could not notice negative effects.

EXPECTED RESULT:

No such errors appearing in the console.

It seems like this is fixed, at least for (Geo)JSON data, by providing an object like { type: 'application/geo+json' } or at least { type: 'application/json' } to the Blob constructor here: https://github.com/tangrams/tangram/blob/990d2608c7dce2c3801c2cfd676e5c2e5b74c743/src/scene/scene.js#L1037

bcamper commented 3 years ago

Thanks for the report and easy fix @d3d9! I wonder if this behavior has changed at some point in Firefox versions, but no matter now... this will be released in v0.21.2 and the issue will be closed then.