利用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 ...
随机推荐
- 单据头->实体服务规则中根据单据类型设置可见性或必录等
- 数据结构5.4_m元多项式的表示
三元多项式表示如下: P(x,y,z) = x10y3z2 + 2x6y3z2 + 3x5y2z2 + x4y4z + 6x3y4z + 2yz + 15 然后对式子进行变形: P(x,y,z)=(( ...
- I Hate It(线段树区间最值,单点更新)-------------蓝桥备战系列
很多学校流行一种比较的习惯.老师们很喜欢询问,从某某到某某当中,分数最高的是多少. 这让很多学生很反感. 不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问.当然,老 ...
- MySQL 安装 linux ,window 傻瓜版
现在作为服务器操作系统的一般有三种,Windows Server,Linux,Unix,在这里我们只介绍在windows下和linux下安装mysql,Unix下安装应该和linux差不多. Wind ...
- 118th LeetCode Weekly Contest Powerful Integers
Given two non-negative integers x and y, an integer is powerful if it is equal to x^i + y^j for some ...
- python中各进制之间的转换
偶然翻看进制转换的内容.这里简单做一个记录吧. #十进制转换二进制 >>> bin() '0b1010' #十进制转换十六进制 >>> hex() '0xa' #二 ...
- java单元测试之Mock静态方法
1 public final class AmountUtil { public static String CustomFormatWith2Digits(int amount) { return ...
- javascript有哪些优秀的库,把你喜欢的都说出来吧
回复格式 应用领域 …… 你喜欢的js库名称 …… 作用(一句话) web …… jquery …… 众所周知的dom操作库 seajs …… js的管理框架 ejs …… 没有学习成本的js模 ...
- 网络那点事之socket队列
1.socket 在内核中是怎么表示的,怎么与文件系统建立关系 2.socket在什么时候创建了接收队列,接收队列的长度是怎么确定的 3.接收到一个数据包根据怎么找到到接收队列的 使用hash算法,分 ...
- 文献综述六:基于JS 技术的电子商品管理系统设计及实现
一.基本信息 标题:基于JS 技术的电子商品管理系统设计及实现 时间:2017 出版源:无线互联科技 文件分类:js技术的研究 二.研究背景 主要对Js下电商管理系统的设计及实现进行了探讨,利用软件工 ...