Wednesday, March 7, 2018

Map server URL with query parameters in ArcGIS JS 4.6

Starting from ArcGIS JS 4.6, the map server URL should not have any query parameters. Any query parameters exists in the map server URL will be removed.

To handle this issues, you can override the urlUtils.removeQueryParameters() as below


require(["esri/core/urlUtils"], function(urlUtils) {

   urlUtils.removeQueryParameters = function(a){
      return a;
   };

});

But somehow that's a bad trick. A better way is to use the TileLayer._set() to get rid of the parameters stripping action when setting the URL. i.e.

TileLayer._set('url', 'map_server_url')


Using Proxy with ArcGIS JS


For servers without CORS enabled. We can use proxy mechanism to access the services.

This is done by modifying the proxy.ashx.

You can also add any parameters before sending the request to the actual server.

More references could be found at:

https://developers.arcgis.com/javascript/latest/guide/proxies/index.html

Sync multiple git repo at once

Use the following command in Linux will do the job:  ls -d RepoNames* | xargs -I{} git -C {} pull