What are the real benefits of using esri/request instead of window.fetch?

323
1
Jump to solution
11-05-2021 06:08 AM
EmreCan
New Contributor II

Hello,

I have a simple question about the usage of the ersiRequest function.

What are the real benefits of using esri/request instead of window.fetch?

The only advantage I know is that there is a request interceptor.

Tags (4)
0 Kudos
1 Solution

Accepted Solutions
shaylavi
Esri Contributor

It's just a wrapper aimed to support ESRI related operations better. 

Quoting the documentation, it says the followings:

esriRequest is a utility method to retrieve data from a web server. Data can be static (stored in a file on the web server), or it can be dynamic (generated on-demand by a web service)

esriRequest is primarily used to download data. However, it can also be used to upload a file from user's computer to a web server. The file can be of any type: Word Document, Excel Spreadsheet, CSV, PDF, JPEG, PNG etc

If an application makes requests to an ArcGIS Server, esriRequest will automatically detect if that server supports CORS. 

esriRequest uses the appropriate method to execute a request based on the target of the request and what the browser supports. The native method to do AJAX requests is to use XMLHttpRequest(XHR). Because there are subtle differences in how XHR is implemented across browsers, Dojo abstracts away and addresses cross-browser inconsistencies via dojo.xhrGet and dojo.xhrPost. Dojo also provides methods in the dojo.io namespace to do AJAX-style requests with JSONP and to use an iframe to upload files.

esriRequest sits on top of the methods defined by Dojo to provide a clean, simple way to execute AJAX-style requests. Depending on the arguments passed to esriRequest, different Dojo methods are used.

 

Shay

View solution in original post

0 Kudos
1 Reply
shaylavi
Esri Contributor

It's just a wrapper aimed to support ESRI related operations better. 

Quoting the documentation, it says the followings:

esriRequest is a utility method to retrieve data from a web server. Data can be static (stored in a file on the web server), or it can be dynamic (generated on-demand by a web service)

esriRequest is primarily used to download data. However, it can also be used to upload a file from user's computer to a web server. The file can be of any type: Word Document, Excel Spreadsheet, CSV, PDF, JPEG, PNG etc

If an application makes requests to an ArcGIS Server, esriRequest will automatically detect if that server supports CORS. 

esriRequest uses the appropriate method to execute a request based on the target of the request and what the browser supports. The native method to do AJAX requests is to use XMLHttpRequest(XHR). Because there are subtle differences in how XHR is implemented across browsers, Dojo abstracts away and addresses cross-browser inconsistencies via dojo.xhrGet and dojo.xhrPost. Dojo also provides methods in the dojo.io namespace to do AJAX-style requests with JSONP and to use an iframe to upload files.

esriRequest sits on top of the methods defined by Dojo to provide a clean, simple way to execute AJAX-style requests. Depending on the arguments passed to esriRequest, different Dojo methods are used.

 

Shay
0 Kudos