利用actionscript访问wfs服务
以后整理……</>
private function search_clickHandler():void{
op="search";
var urlLoader:URLLoader=new URLLoader();
var resultStr:String;
var request:URLRequest;
var urlVariables:URLVariables;
var url:String="http://192.168.3.200:8399/arcgis/services/st/poi/MapServer/WFSServer";
configureListeners(urlLoader);//给urlloader对象添加监听事件
urlVariables=new URLVariables();
urlVariables.request = "GetFeature";
//urlVariables.request = "GetCapabilities";
urlVariables.service = "WFS";
urlVariables.typeName = "Poi";
urlVariables.version = "1.0.0";
urlVariables.BBOX = "120.5279,31.2890,120.9680,31.2332";
request= new URLRequest(url);
//URLRequest 类可捕获单个 HTTP 请求中的所有信息。
//URLRequest 对象将传递给 Loader、URLStream 和 URLLoader 类的 load() 方法和其他加载操作,以便启动 URL 下载。
// Alert.show("you");
request.data = urlVariables;//将url请求的数据放入request中
request.method = URLRequestMethod.GET;//设置请求的类型
try {
urlLoader.load(request);//开始发送请求
} catch (error:Error) {
Alert.show(error.message);
}
function configureListeners(dispatcher:IEventDispatcher):void {
//加载完成事件;
dispatcher.addEventListener(Event.COMPLETE, loaderHandler);
//开始访问事件;
dispatcher.addEventListener(Event.OPEN, loaderHandler);
//加载进度事件;
dispatcher.addEventListener(ProgressEvent.PROGRESS, loaderHandler);
//跨域访问安全策略事件;
dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, loaderHandler);
//Http状态事件;
dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, loaderHandler);
//访问出错事件;
dispatcher.addEventListener(IOErrorEvent.IO_ERROR, loaderHandler);
}
function loaderHandler(event:*):void
{
switch(event.type) {
case Event.COMPLETE:
//Alert.show("成功: ");
//Alert.show(typeof urlLoader.data);
resultStr=String(urlLoader.data);//请求成功,并取得返回值
if(resultStr!=null&&resultStr!=""){
var xml:XML=new XML(resultStr);
Alert.show(xml.children()[0].toString());
}
break;
case Event.OPEN:
//Alert.show("open: " + event);
break;
case ProgressEvent.PROGRESS:
//Alert.show("progress: " + event);
break;
case SecurityErrorEvent.SECURITY_ERROR:
Alert.show("securityError: " + event);
break;
case HTTPStatusEvent.HTTP_STATUS:
//Alert.show("httpStatus: " + event);
break;
case IOErrorEvent.IO_ERROR:
Alert.show("ioError: " + event);
break;
}
}
待整理……
private function search_clickHandler():void{
op="search";
var urlLoader:URLLoader=new URLLoader();
urlLoader.dataFormat=URLLoaderDataFormat.BINARY;
var resultStr:String;
var request:URLRequest;
var urlVariables:URLVariables;
var url:String="http://192.168.3.200:8399/arcgis/services/st/poi/MapServer/WFSServer";
configureListeners(urlLoader);//给urlloader对象添加监听事件
urlVariables=new URLVariables();
urlVariables.request = "GetFeature";
//urlVariables.request = "GetCapabilities";
urlVariables.service = "WFS";
urlVariables.typeName = "Poi";
urlVariables.version = "1.1.0";
// urlVariables.BBOX = "120.5279,31.2890,120.9680,31.2332";
var params:String='<ogc:Filter>'+
'<ogc:PropertyIsEqualTo>'+
'<ogc:PropertyName>SHP_ID</ogc:PropertyName>'+
'<ogc:Literal>'+'F47015031B134C399BB73E4DBFB83365'+'</ogc:Literal>'+
'</ogc:PropertyIsEqualTo>'+
'</ogc:Filter>';
/* var params:String='<ogc:Filter><ogc:BBOX><ogc:PropertyName>Shape</ogc:PropertyName> <gml:Box srsName="EPSG:4326">'+
'<gml:coordinates>31.2890,120.5279 31.2332,120.9680</gml:coordinates>'+
'</gml:Box></ogc:BBOX></ogc:Filter>'; */
urlVariables.Filter= params;
request= new URLRequest(url);
//URLRequest 类可捕获单个 HTTP 请求中的所有信息。
//URLRequest 对象将传递给 Loader、URLStream 和 URLLoader 类的 load() 方法和其他加载操作,以便启动 URL 下载。
// Alert.show("you");
request.data = urlVariables;//将url请求的数据放入request中
request.method = URLRequestMethod.GET;//设置请求的类型
try {
urlLoader.load(request);//开始发送请求
} catch (error:Error) {
Alert.show(error.message);
}
function configureListeners(dispatcher:IEventDispatcher):void {
//加载完成事件;
dispatcher.addEventListener(Event.COMPLETE, loaderHandler);
//开始访问事件;
dispatcher.addEventListener(Event.OPEN, loaderHandler);
//加载进度事件;
dispatcher.addEventListener(ProgressEvent.PROGRESS, loaderHandler);
//跨域访问安全策略事件;
dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, loaderHandler);
//Http状态事件;
dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, loaderHandler);
//访问出错事件;
dispatcher.addEventListener(IOErrorEvent.IO_ERROR, loaderHandler);
}
function loaderHandler(event:*):void
{
switch(event.type) {
case Event.COMPLETE:
//Alert.show("成功: ");
//Alert.show(typeof urlLoader.data);
var bt:ByteArray = urlLoader.data;
resultStr = bt.readMultiByte(bt.length,"utf-8");
if(resultStr!=null&&resultStr!=""){
var xml:XML=new XML(resultStr);
Alert.show(xml.toString());
}
break;
case Event.OPEN:
//Alert.show("open: " + event);
break;
case ProgressEvent.PROGRESS:
//Alert.show("progress: " + event);
break;
case SecurityErrorEvent.SECURITY_ERROR:
Alert.show("securityError: " + event);
break;
case HTTPStatusEvent.HTTP_STATUS:
//Alert.show("httpStatus: " + event);
break;
case IOErrorEvent.IO_ERROR:
Alert.show("ioError: " + event);
break;
}
}
利用actionscript访问wfs服务的更多相关文章
- java查询WFS服务
在我们访问wfs服务时候,有时候会遇到前台访问时候的跨域问题.这里给出java访问的一个小例子. import java.io.BufferedReader; import java.io.IOExc ...
- cesium结合geoserver利用WFS服务实现图层新增(附源码下载)
前言 cesium 官网的api文档介绍地址cesium官网api,里面详细的介绍 cesium 各个类的介绍,还有就是在线例子:cesium 官网在线例子,这个也是学习 cesium 的好素材. 内 ...
- leaflet结合geoserver利用WFS服务实现图层删除功能(附源码下载)
前言 leaflet 入门开发系列环境知识点了解: leaflet api文档介绍,详细介绍 leaflet 每个类的函数以及属性等等 leaflet 在线例子 leaflet 插件,leaflet ...
- openlayers6结合geoserver利用WFS服务实现图层新增功能(附源码下载)
内容概览 1.openlayers6结合geoserver利用WFS服务实现图层新增功能2.源代码demo下载 效果图如下: 本篇主要是openlayers6通过调用geoserver发布的地图服务W ...
- leaflet结合geoserver利用WFS服务实现图层新增功能(附源码下载)
前言 leaflet 入门开发系列环境知识点了解: leaflet api文档介绍,详细介绍 leaflet 每个类的函数以及属性等等 leaflet 在线例子 leaflet 插件,leaflet ...
- cesium结合geoserver利用WFS服务实现图层编辑(附源码下载)
前言 cesium 官网的api文档介绍地址cesium官网api,里面详细的介绍 cesium 各个类的介绍,还有就是在线例子:cesium 官网在线例子,这个也是学习 cesium 的好素材. 内 ...
- cesium结合geoserver利用WFS服务实现图层删除(附源码下载)
前言 cesium 官网的api文档介绍地址cesium官网api,里面详细的介绍 cesium 各个类的介绍,还有就是在线例子:cesium 官网在线例子,这个也是学习 cesium 的好素材. 内 ...
- 利用node构建本地服务
利用node构建本地服务 首先安装下node.js,地址为https://nodejs.org/en/,然后安装npm. node.js的中文api地址http://nodeapi.ucdok.com ...
- OpenLayers调用ArcGIS Server发布的WFS服务
OpenLayers调用ArcGIS Server发布的WFS服务 原创: 蔡建良 2013-08-20 一. 开发环境 1) Openlayers2.13+arcgis server9.3 2) W ...
随机推荐
- JUnit4.13环境配置
Junit 4.13环境配置 JUnit是一个强大的单元测试工具.它可以针对某一个特定类的所有方法进行精确打击.这个东西具体怎么使用,留在以后说.这次给大家说说idea下配置JUnit环境的方法. 1 ...
- apache shiro学习笔记
一.权限概述 1.1 认证与授权 认证:系统提供的用于识别用户身份的功能,通常登录功能就是认证功能-----让系统知道你是谁?? 授权:系统授予用户可以访问哪些功能的许可(证书)----让系统知道你能 ...
- PHP 位运算符
位运算符 位运算符是指对二进制位从低位到高位对齐后进行运算. 符号 作用 举例 个人理解 & 按位与 $m & $n 全1为1,否则为0 | 按位或 $m | $n 全0为0,有1为1 ...
- C++_标准模板库STL概念介绍3-函数对象
函数对象也叫做函数符(functor). 函数符是可以以函数方式和( )结合使用的任意对象. 包括函数名,指向函数的指针,重载了()运算符的类对象. 可以这样定义一个类: class Linear { ...
- C++_友元2-友元成员函数
接着上一篇<友元是什么>中,我们发现Remote友元类的大多数方法都是用Tv类的公有接口实现.这意味着这些方法并不是真正需要友元. 事实上唯一直接访问Tv成员的Remote方法是Remot ...
- Fliptile (dfs+二进制压缩)
Farmer John knows that an intellectually satisfied cow is a happy cow who will give more milk. He ha ...
- poj3417 Network 树上差分+LCA
题目传送门 题目大意:给出一棵树,再给出m条非树边,先割掉一条树边,再割掉一条非树边,问有几种割法,使图变成两部分. 思路:每一条 非树边会和一部分的树边形成一个环,分三种情况: 对于那些没有形成环的 ...
- UESTC - 1610 递推方程+矩阵快速幂
感觉像是HDU Keyboard的加强版,先推出3张牌时的所有组合,然后递推出n张牌 看到n=1e18时吓尿了 最后24那里还是推错了.. (5行1列 dp[1][n],dp[2][n],dp[3][ ...
- ASP.NET与.NET区别
1.NET是什么? .Net全称.NET Framework是一个开发框架,不是一门编程语言,简单的来说 就是一组类库框架,.NET开发支持C#.VB.NET.J#.Js和Managed C++等 其 ...
- 有用的 Angular CLI 命令参数
这是一些有用的 Angular 5 CLI 命令参数,注意参数前面的-和--的不同... 1. 指定build的输出为production version,合并优化css and js files. ...