# Further cors problems.

**URL:** <https://community.cesium.com/t/further-cors-problems/1659>\
**Category:** CesiumJS\
**Created:** [November 10, 2014, 1:48pm UTC](https://community.cesium.com/t/further-cors-problems/1659 "2014-11-10T13:48:19Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![sean\_con](https://avatars.discourse-cdn.com/v4/letter/s/d07c76/32.png) [@sean\_con](https://community.cesium.com/u/sean_con)\
**Post date:** [November 10, 2014, 1:48pm UTC](https://community.cesium.com/t/further-cors-problems/1659/1 "2014-11-10T13:48:19Z")

</div>

Cosider this code:

\<div id="cesiumContainer1" width = "98%" style = "border: 2px solid white;" padding = "4px" margin = "4px"\>  
\</div\>  
\<style\>@import url(../Cesium/Build/Cesium/Widgets/widgets.css);\</style\>

\<script src="../Cesium/Build/Cesium/Cesium.js"\>\</script\>

\<script type = "text/javascript"\>  
var div1 = document.createElement('div');  
var t1 = document.getElementById('outcell');  
t1.appendChild(div1);  
div1.id = 'cesiumContainer1';  
div1.style.width = '98%';  
div1.style.border = '2px solid white'; // this is what constructs the div above  
\</script\>

\<script type = "text/javascript"\>  
var map1 = new Cesium.CesiumWidget('cesiumContainer1', {  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sceneMode : Cesium.SceneMode.SCENE3D  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;});  
var scene1 = map1.scene;  
var terrainProvider1 = new Cesium.CesiumTerrainProvider({  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url : '[//cesiumjs.org/tilesets/terrain/smallterrain](https://cesiumjs.org/tilesets/terrain/smallterrain)'  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;});  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scene1.terrainProvider = terrainProvider1;  
scene1.camera.viewRectangle(Cesium.Rectangle.fromDegrees(-87,24,-80,31)); // look at florida  
\</script\>

Now, I pan to the islands of cuba near Florida, zoom in, then tilt the map, to see the terrain. This is working.

Now I add this :

var layers = scene1.globe.imageryLayers;  
&nbsp;&nbsp;&nbsp;&nbsp;layers.removeAll();  
&nbsp;&nbsp;&nbsp;&nbsp;layers.addImageryProvider(new Cesium.ArcGisMapServerImageryProvider({  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url : ‘[http://server.arcgisonline.com/ArcGIS/rest/services/World\_Shaded\_Relief/MapServer](http://server.arcgisonline.com/ArcGIS/rest/services/World_Shaded_Relief/MapServer)’,  
&nbsp;&nbsp;&nbsp;&nbsp;}));

Thus, I have :

\<script type = “text/javascript”\>  
var map1 = new Cesium.CesiumWidget(‘cesiumContainer1’, {  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sceneMode : Cesium.SceneMode.SCENE3D  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;});  
var scene1 = map1.scene;  
var terrainProvider1 = new Cesium.CesiumTerrainProvider({  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url : ‘[//cesiumjs.org/tilesets/terrain/smallterrain](https://cesiumjs.org/tilesets/terrain/smallterrain)’  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;});  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scene1.terrainProvider = terrainProvider1;  
var layers = scene1.globe.imageryLayers;  
layers.removeAll();  
layers.addImageryProvider(new Cesium.ArcGisMapServerImageryProvider({  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url : ‘[http://server.arcgisonline.com/ArcGIS/rest/services/World\_Shaded\_Relief/MapServer](http://server.arcgisonline.com/ArcGIS/rest/services/World_Shaded_Relief/MapServer)’,  
&nbsp;&nbsp;&nbsp;&nbsp;}));

scene1.camera.viewRectangle(Cesium.Rectangle.fromDegrees(-87,24,-80,31)); // look at florida  
\</script\>

Do the same tilting, and I get a Cors error. I realize that ESRI does not provide proper CORS headers. Any workaround? I am using my own localhost / AWS server

---

<div class="post-metadata">

**Author:** ![Kevin\_Ring](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/kevin_ring/32/2003_2.png) [@Kevin\_Ring](https://community.cesium.com/u/Kevin_Ring)\
**Post date:** [November 11, 2014, 12:28am UTC](https://community.cesium.com/t/further-cors-problems/1659/2 "2014-11-11T00:28:58Z")

</div>

Hi,

I believe that Esri’s public servers do in fact include proper CORS headers these days. I pasted your code into Sandcastle and it worked fine for me. No errors, CORS-related or otherwise, and the Esri imagery appeared.

Exactly what error are you seeing?

Kevin

---

<div class="post-metadata">

**Author:** ![sean\_con](https://avatars.discourse-cdn.com/v4/letter/s/d07c76/32.png) [@sean\_con](https://community.cesium.com/u/sean_con)\
**Post date:** [November 11, 2014, 7:41pm UTC](https://community.cesium.com/t/further-cors-problems/1659/3 "2014-11-11T19:41:32Z")

</div>

Hi, the imagery is fine, as long as you dont tilt and zoom / pan the 3D view.

If you do so, Cesium crashes, with the error in konsole : XMLHttpRequest cannot load ... disallowed for cross-origin (Firefox, Linux)

---

<div class="post-metadata">

**Author:** ![Kevin\_Ring](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/kevin_ring/32/2003_2.png) [@Kevin\_Ring](https://community.cesium.com/u/Kevin_Ring)\
**Post date:** [November 12, 2014, 11:37pm UTC](https://community.cesium.com/t/further-cors-problems/1659/4 "2014-11-12T23:37:11Z")

</div>

Sorry, I’m not seeing that. I even tried Firefox on Linux. A CORS failure like that shouldn’t crash Cesium in any case. Exactly what do you mean by “Cesium crashes”?

 ![image.png](https://global.discourse-cdn.com/cesium/original/2X/f/f66ae8ea6f1b67ed0635c0f0110e40c061e3297c.png)

---

<div class="post-metadata">

**Author:** ![sean\_con](https://avatars.discourse-cdn.com/v4/letter/s/d07c76/32.png) [@sean\_con](https://community.cesium.com/u/sean_con)\
**Post date:** [November 13, 2014, 7:31pm UTC](https://community.cesium.com/t/further-cors-problems/1659/5 "2014-11-13T19:31:11Z")

</div>

> Exactly what do you mean by "Cesium crashes"?

The rendering canvas (the webGL viewport) disappears from the HTML document body -- and then firefox redirects itself to a random location / page, often one that is open in another tab.

---

<div class="post-metadata">

**Author:** ![Kevin\_Ring](https://sea2.discourse-cdn.com/cesium/user_avatar/community.cesium.com/kevin_ring/32/2003_2.png) [@Kevin\_Ring](https://community.cesium.com/u/Kevin_Ring)\
**Post date:** [November 13, 2014, 11:52pm UTC](https://community.cesium.com/t/further-cors-problems/1659/6 "2014-11-13T23:52:17Z")

</div>

That sounds very sketchy. It’s hard for me to imagine what Cesium could be doing to cause that.

---

<div class="post-metadata">

**Author:** ![sean\_con](https://avatars.discourse-cdn.com/v4/letter/s/d07c76/32.png) [@sean\_con](https://community.cesium.com/u/sean_con)\
**Post date:** [November 14, 2014, 4:56pm UTC](https://community.cesium.com/t/further-cors-problems/1659/7 "2014-11-14T16:56:03Z")

</div>

I will make a video or a screengrab if that helps.
