[ ArcGIS 10 API for Javascript 系列 ] - 默认的HTTP请求方式

探讨了ArcGIS API for JavaScript中HTTP请求为何默认采用GET而非POST方式的原因,包括缓存利用、跨域访问限制及header大小考量,并介绍了在特定场景下如何通过POST Proxy解决长URL请求问题。
 

      ArcGIS API for JavaScript默认方式HTTP请求是GET方式, 而不是Post方式。

 

HTTP为长URL请求时,GET将无法使用,而必须采用Post的方式。Esri默认的http请求方式是GET。对于这种应用,如:以缓冲后的几何为参数的QueryTask,此情况下就需要使用POSTProxy来处理这种情况。

具体Proxy Page的使用可以参考:http://resources.esri.com/help/9.3/arcgisserver/apis/javascript/gmaps/help/google_start.htm#topics/ags_proxy.html ,一直有个疑问为什么Esri不使用post方式做为http请求,而使用get方式。

 

初步原因:

   1、缓存:浏览器对GET方式请求的资源可以进行缓存,而对POST方式不缓存资源。

   2、跨域访问:使用scriptiframe等方式跨域,都是属于GET方式的http请求,而使用Xhr方式的Ajax是无法实现跨域。这样POST无法跨域。

   3header头:POST方式 发送相同数据的请求,其header要比GET方式要大的多。

 

综合上面各种因素,考虑到ArcGIS Server实际的应用场景。Esri选择Get方式为Http默认的请求方式也在情理之中。

 

 

转载于:https://www.cnblogs.com/upDOoGIS/archive/2010/12/08/1899986.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值