收藏 分享(赏)

REST缓存问题.doc

上传人:11xg27ws 文档编号:12236961 上传时间:2021-12-04 格式:DOC 页数:3 大小:25KB
下载 相关 举报
REST缓存问题.doc_第1页
第1页 / 共3页
REST缓存问题.doc_第2页
第2页 / 共3页
REST缓存问题.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

1、使用 Flex代码清除 ArcGIS Server 10 REST缓存1 在我们的基于 REST API进行开发的应用系统中,经常会遇到需要清除 REST cache的情况,例如服务发生变化或者新增、删除服务的时候。这些情况下在 ArcGIS10 之前的版本时,只能够手工的去清除 REST Cache。2 在 ArcGIS 10中,REST API 新增加了清除 REST cache的方法,具体流程是:首先使用generateToken 方法生成 toeken,然后使用 token调用 cache/clear方法去清除缓存。2.1 generateToken方法的 Url为:http:/gen

2、erateToken其中 admin-url为 http:/admin,例如 http:/zbc/arcgis/rest/admin在调用这个方法的时候,需要使用 POST方法,其中 POST的参数主要有:参数 细节f响应返回的格式,默认返回 html值为:html或 jsonusername REST 管理员的用户名Password REST 管理员的密码client生成 token使用的 IP地址或者 HTTP Referer值为 ip,requestip 或 referer当值为 ip时,ip 参数必须填写当值为 referer, referer 参数必须填写当值为 requestip时

3、,ip 和 referer参数不必填写,系统会使用当前发送 HTTP请求的ip地址来生成 token,一般来说使用该选项,除非生成 token和清除 cache不是由同一个ip或 referer的程序完成。refererclient=referer时候有效,需要输入调用REST Admin 的基础网址,例如:referer=http:/myserver/mywebappipclient=ip时有效,需要输入调用 REST Admin 的 ip,例如 ip=10.14.102.85expirationToken超时时间,单位为分钟,默认为10分钟,token 有效期最长为10天该方法的返回结果为

4、(JSON):“token”: “”,“expires”: /the time (in milliseconds from epoch) when this token will expire2.2 清除缓存方法的 Url为http:/cache/clear?token=admin-url 上面已经提到,为 http:/admin,例如http:/zbc/arcgis/rest/admin这是一个 GET方法,只需要在 http:/cache/clear后面加上 token参数即可,此处的 token即为我们上面通过 generateToken方法得到的 token。该方法的另外一个参数为 f

5、,即返回数据格式,值为 html或 json,默认为 html该方法的返回结果为(JSON):“success”: true /the value will always be true. Failure will result in an error response.如果 success参数的结果为 true,则清除成功,否则失败。3 Flex 代码实现经过我们上面的分析,可以很明确的得到清除 REST cache的步骤,那么下面我们就用flex来实现这个功能。3.1 生成 token/获取 tokenprivate function getToken(adminUrl:String ,u

6、sername:String,password:String)var httpService:HTTPService = new HTTPService();/构造 generateToken方法 UrlhttpService.url = adminUrl+”/generateToken”;/使用 POST方法httpService.method=”POST”;var param:Object = new Object();/用户名param.username = username;/密码param.password = password;/IPparam.ip = “”;/refererpa

7、ram.referer=”“;/client使用 requestip,因此 ip和 referer不填param.client = “requestip”;/超时设为1个小时param.expiration = 60;/以 json方式返回param.f=”json”;httpService.addEventListener(ResultEvent.RESULT,OnResultGetToken);httpService.addEventListener(FaultEvent.FAULT,OnFaultGetToken);/发送请求httpService.send(param);3.2 清除

8、REST缓存private function Clear(adminUrl:String ,token:String)var httpService:HTTPService = new HTTPService();/构造清楚缓存 UrlhttpService.url = adminUrl+”/cache/clear?token=”+token+”httpService.addEventListener(ResultEvent.RESULT,OnResultClear);httpService.addEventListener(FaultEvent.FAULT,OnFaultClear);/发送请求httpService.send();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报