类名 MapServer

# new MapServer(options)

地图服务

参数:

名称 类型 描述
options Object

构造参数

示例
//初始化MapServer服务对象
// ES5引入方式
const { MapServer } = zondy.service
// ES6引入方式
import { MapServer } from "@mapgis/webclient-common"
const mapServer = new MapServer({
  //从igs详情里面获取的服务地址
  url: 'http://localhost:8089/igs/rest/services/动态裁图/MapServer'
});

继承关系

成员变量

Boolean

# clientId

客户端id

Inherited From:
Boolean

# enableGlobeFetch

是否使用确据唯一的fetch对象,默认为true,当设为false时,会使用自己私有的fetch对象,所有的请求设置不会影响全局

Inherited From:
示例
//设置请求基地址
// ES5引入方式
const { BaseServer } = zondy.service
// ES6引入方式
import { BaseServer } from "@mapgis/webclient-common"
let BaseServer = new BaseServer({
  //请求基地址
  url: '你的URL',
  //使用私有的fetch对象
  enableGlobeFetch: false,
  //此时设置token等属性,不会影响全局的fetch对象
  tokenValue: '你的token'
});
//继续使用全局fetch
BaseServer.enableGlobeFetch = true;
String

# headers

请求头参数

Inherited From:
示例
//设置请求头参数
// ES5引入方式
const { BaseServer } = zondy.service
// ES6引入方式
import { BaseServer } from "@mapgis/webclient-common"
let BaseServer = new BaseServer({
  //请求头
  headers: {
     //设置Content-Type为multipart/form-data
    'Content-Type': 'multipart/form-data',
     //设置token
    'token': '你的token'
  }
});
//动态修改
BaseServer.headers.token = '新token';
function

# requestInterceptor

请求发送拦截器

Inherited From:
示例
//设置拦截器,任何一个继承自BaseServer的对象都可以设置,全局唯一
// ES5引入方式
const { BaseServer,RequestInterceptor } = zondy.service
// ES6引入方式
import { BaseServer,RequestInterceptor } from "@mapgis/webclient-common"
let BaseServer = new BaseServer({
  //设置请求发送拦截器
  requestInterceptor: new RequestInterceptor({
    //请求发送前进行统一处理
    before: function(config) {
      //执行你的业务逻辑
      //注意必须显示返回config对象,如果返回为空,则不发送请求
      return config;
    },
    //请求发送失败时进行统一处理
    failure: function(error) {
      //执行你的业务逻辑
    }
  })
});
//动态修改
BaseServer.requestInterceptor.before = function() {};
String

# requestTimeout

请求超时时间,默认45000ms,即45s

Inherited From:
示例
//设置超时时间
//初始化AddressServer服务对象
// ES5引入方式
const { BaseServer } = zondy.service
// ES6引入方式
import { BaseServer } from "@mapgis/webclient-common"
let BaseServer = new BaseServer({
  //超时时间
  requestTimeout: 2000
});
//动态修改
BaseServer.requestTimeout = 3000;
function

# responseInterceptor

请求响应拦截器

Inherited From:
示例
//设置拦截器,任何一个继承自BaseServer的对象都可以设置,全局唯一
// ES5引入方式
const { BaseServer,ResponseInterceptor } = zondy.service
// ES6引入方式
import { BaseServer,ResponseInterceptor } from "@mapgis/webclient-common"
let BaseServer = new BaseServer({
  //设置请求响应拦截器
  responseInterceptor: new ResponseInterceptor({
    //执行请求响应,接口调用成功时会执行的回调
    success: function(result) {
      //执行你的业务逻辑
      //注意必须显示返回result对象,如果返回为空,则不执行请求响应成功回调
      return result;
    },
    //请求响应成功,接口调用失败时会执行的函数
    failure: function(result) {
      //执行你的业务逻辑
      //注意必须显示返回result对象,如果返回为空,则不执行回调韩式
      return result;
    }
  })
});
//动态修改
BaseServer.responseInterceptor.success = function() {};
TokenAttachType

# tokenAttachType

指定token附加到何处

Inherited From:
示例
//设置token值
// ES5引入方式
const { BaseServer } = zondy.service
const { TokenAttachType } = zondy.enum
// ES6引入方式
import { BaseServer,TokenAttachType } from "@mapgis/webclient-common"
let BaseServer = new BaseServer({
  //token名
  tokenValue: '你的token值',
  //token值
  tokenValue: '你的token值',
  //指定token附加到url后面
  tokenAttachType: TokenAttachType.url
});
//动态修改
BaseServer.tokenAttachType = TokenAttachType.header;
String

# tokenKey

token名

Inherited From:
示例
//设置token名
// ES5引入方式
const { BaseServer } = zondy.service
// ES6引入方式
import { BaseServer } from "@mapgis/webclient-common"
let BaseServer = new BaseServer({
  //token名
  tokenKey: '你的tokenKey'
});
//动态修改
BaseServer.tokenKey = '新tokenKey';
String

# tokenValue

token值

Inherited From:
示例
//设置token值
// ES5引入方式
const { BaseServer } = zondy.service
// ES6引入方式
import { BaseServer } from "@mapgis/webclient-common"
let BaseServer = new BaseServer({
  //token值
  tokenValue: '你的token值'
});
//动态修改
BaseServer.tokenValue = '新token值';
String

# url

服务基地址

Inherited From:
示例
//设置请求基地址
// ES5引入方式
const { BaseServer } = zondy.service
// ES6引入方式
import { BaseServer } from "@mapgis/webclient-common"
let BaseServer = new BaseServer({
  //请求基地址
  url: '你的URL'
});
//动态修改
BaseServer.url = '新URL';

方法

# addLayer(options)

添加临时文档图层

参数:

名称 类型 描述
options Object

构造参数

addInfo Array

图层添加信息,必填

success function

请求成功时的回调

failure queryFailure

请求失败时的回调

clientId String

客户端Id

# deleteLayer(options)

删除临时文档图层

参数:

名称 类型 描述
options Object

构造参数

layerId String

图层id,必传

success function

请求成功时的回调

failure function

请求失败时的回调

clientId String

客户端Id

# exportImage(options)

根据参数出图,详细说明请参考IGS的API文档

参数:

名称 类型 默认值 描述
options
method FetchMethod FetchMethod.post

请求方式

bbox String

出图范围,格式:xmin,ymin,xmax,ymax,如果设置了projectionSrs参数,确保bbox是projectionSrs参照系的范围

layers String

图层状态,格式:show|hide|include|exclude:layerid1,layerid2

size String

图片大小,格式:width,height,默认512,512

transparent String

返回的图片是否透明,支持true/false, 默认true

format String

返回图片格式,支持png/jpg/gif,默认png

projectionSrs String

投影空间参照系,支持MapGIS参照系名称、EPSG格式参考系、WKT格式参考系

isAntialiasing String

返回的图片是否抗锯齿,支持true/false, 默认false

layerStyles String

样式信息,格式参照 Map<String,MapLayerDisplayStyleDto>,key为layerId,支持图层复合索引

layerFilters String

过滤信息,格式参照Map<String,MapLayerFilterDto>,key为layerId,支持图层复合索引

dynamicLayers String

动态图层出图参数

clipping String

空间裁剪参数

f String

返回格式

clientId String

客户端Id

# getImage(options)

根据参数获取图片的url

参数:

名称 类型 默认值 描述
options
extent Extent

图片范围

width Number 256

图片宽度,单位像素

height Number 256

图片高度,单位像素

String 图片的url

# getLegend(options)

获取图例

参数:

名称 类型 描述
options Object

构造参数

success getLegendSuccess

请求成功时的回调

failure queryFailure

请求失败时的回调

layers String

图层索引列表,多个用英文逗号隔开

size String

图例图片的大小,格式:width,height

where String

属性条件,类SQL语句

bbox Extent

矩形范围过滤条件

page Number

图例结果分页页数

pageSize Number

图例结果分页大小

maxQueryFeatureCount Number

查询要素的最大条数

示例
//回调方式
mapServer.getLegend({
  layers: "0",
  size: '45,45',
  success: function (result) {
    console.log('请求成功:', result);
  },
  failure: function (result) {
    console.log('请求失败:', result);
  }
});
//promise方式
mapServer.getLegend({
  layers: "1"
}).then(function (result) {
  console.log('请求成功:', result);
}).catch(function (result) {
  console.log('请求失败:', result);
});

# queryFeatures(options)

指定图层的要素查询

参数:

名称 类型 默认值 描述
options Object

构造参数

layerId String

图层id,必传

success queryFeaturesSuccess

请求成功时的回调

failure queryFailure

请求失败时的回调

method FetchMethod FetchMethod.get

请求方式,包括FetchMethod.get,FetchMethod.post

where String

要素查询where条件,类似sql语句

geometry Geometry

要素查询几何条件

distance Number 0

几何缓冲的距离,geometry为point、line时有效(若数据源为大数据PG数据,且geometryType为line或者point时为必填数据)

geometryPrecision Number

指定返回要素中几何坐标的小数点位数,例如2,则返回两位小数

spatialRel SpatialRelation

几何条件的空间判定规则,Intersects(相交)、EnvelopeIntersects(外包矩形相交)、Contains(包含)、Disjoint(相离)

outFields String

指定要输出的属性字段,可为*表示所有,多个用英文逗号分隔

objectIds String

过滤id,多个用英文逗号分隔(参数优先级很高,可能导致其它筛选条件失效)

orderByFields String

排序字段,格式: fieldName [ASC|DESC]

groupByFieldsForStatistics String

分组统计的字段信息,格式为field1,field2

resultRecordCount Number 20

分页参数:结果返回条数,默认20

resultOffset Number

分页参数:跳过条数,例如resultOffset为4,则跳过前4条,从第5条开始返回resultRecordCount的数量

outStatistics Array.<OutStatistic>

字段统计参数数组

returnGeometry Boolean true

是否返回要素几何信息,默认为true

returnAttribute Boolean true

是否返回要素属性,默认为true

returnStyle Boolean false

是否返回要素样式,默认为false

returnIdsOnly Boolean false

是否只返回要素id,默认为false

returnCountOnly Boolean false

是否只返回要素条数,默认为false

returnExtentOnly Boolean false

是否只返回范围,默认为false

returnZ Boolean false

是否返回Z轴,默认为false

示例
//通过where语句进行查询
//回调方式
// ES5引入方式
const { Point } = zondy.geometry
 // ES6引入方式
import { Point } from "@mapgis/webclient-common"
mapServer.queryFeatures({
  //图层id
  layerId: '1',
  //where查询条件,类似sql语句,这里查询2011年GDP大于20的城市
	 where: "GDP2011>20",
	 //以GDP2011字段进行升序排序
  orderByFields: "GDP2011 ASC",
	 //指定输出的属性字段为NAME,GDP2011
	 outFields: "NAME,GDP2011",
	 //指定返回要素中几何坐标的小数点位数为2
	 geometryPrecision: 2,
	 //成功返回结果
	 success: function(result) {
		 console.log('请求成功:',result);
	 },
	 failure: function(result) {
		 console.log('请求失败:',result);
	 }
});
//promise方式
//通过geometry语句进行查询
let point = new Point({
	coordinates: [113.8178, 30.172834]
});
mapServer.queryFeatures({
  //图层id
  layerId: 1,
  //几何条件
  geometry: point,
  //设置缓冲距离,仅当几何类型为point、line时有效
  distance: 100
}).then(function (result) {
  console.log('请求成功:', result);
}).catch(function (result) {
  console.log(' n请求失败:', result);
});

# queryFeaturesInLayers(options)

多图层的要素查询

参数:

名称 类型 默认值 描述
options

要素查询参数

success queryFeaturesInLayersSuccess

查询成功回调函数,若使用Promise方式则不必填写

failure queryFailure

查询失败回调函数,若使用Promise方式则不必填写

layerDefs Array

多图层的属性条件,包括layerId、where、outFields;当值为空时,查询所有图层,示例:"[{ "layerId":"0-0","where": "name='中国'", "outfields": "field1,field2"}]"

geometry Geometry

要素查询几何条件

distance Number 0

几何缓冲的距离,geometry为point、line时有效(若数据源为大数据PG数据,且geometryType为line或者point时为必填数据)

geometryPrecision Number

返回要素几何信息中坐标xy的精度

spatialRel SpatialRelation

几何条件的空间判定规则,Intersects(相交)、EnvelopeIntersects(外包矩形相交)、Contains(包含)、Disjoint(相离)

resultRecordCount Number 20

分页参数:结果返回条数,默认20

returnGeometry Boolean true

是否返回几何,默认为true

returnAttribute Boolean true

是否返回属性,默认为true

returnStyle Boolean false

是否返回图形参数信息,默认为false

returnIdsOnly Boolean false

是否只返回id,默认为false

returnCountOnly Boolean false

是否只返回条数,默认为false

returnZ Boolean false

是否返回Z轴,默认为false

示例
//回调方式
// ES5引入方式
const { Extent } = zondy.geometry
const { FetchMethod } = zondy.enum
// ES6引入方式
import { Extent,FetchMethod } from "@mapgis/webclient-common"
mapServer.queryFeaturesInLayers({
  geometry: new Extent({
    xmin: 110.66,
    ymin: 29.61,
    xmax: 114.05,
    ymax: 32.43
  }),
  method: FetchMethod.post,
  success: function (result) {
    console.log('请求成功:', result);
  },
  failure: function (result) {
    console.log('请求击败:', result);
  }
});
//promise方式
mapServer.queryFeaturesInLayers({
  layerDefs: [{
    layerId: "0",
    outfields: "mpLayer,mpPerimeter"
  },{
    layerId: "1",
    where: "mpLayer=1",
    outfields: "mpLayer"
  }]
}).then(function (result) {
  console.log('请求成功:', result);
}).catch(function (result) {
  console.log(' n请求失败:', result);
});

# queryLayerInfo(options)

查询指定图层信息

参数:

名称 类型 描述
options Object

构造参数

layerId String

图层id,必填

success queryLayerInfoSuccess

请求成功时的回调

failure queryFailure

请求失败时的回调

clientId String

客户端Id

mapIndex String

地图索引,igs1.0参数

returnFullStyle Boolean

是否返回全部信息的标志位

guid String

用户会话id

示例
//查询指定图层信息
//回调方式
mapServer.queryLayerInfo({
 //图层id
	layerId: 0,
	//成功回调
	success: function(result) {
		console.log('请求成功:',result);
	},
 failure: function (result) {
   console.log('请求失败:', result);
 }
});
//promise方式
mapServer.queryLayerInfo({
  //图层id
  layerId: '0'
}).then(function (result) {
  console.log('请求成功:', result);
}).catch(function (result) {
  console.log(' n请求失败:', result);
});

# queryLayerList(options)

获取图层列表信息

参数:

名称 类型 描述
options Object

构造参数

success queryLayerListSuccess

请求成功时的回调

failure queryFailure

请求失败时的回调

clientId String

临时图层ID

mapIndex String

地图索引,IGS1.0参数

guid String

用户会话id,IGS1.0参数

示例
//获取图层列表信息
//回调方式
mapServer.queryLayerList({
	success: function(result) {
		console.log('请求成功:',result);
	},
	failure: function(result) {
	  console.log('请求失败:',result);
	}
});
//promise方式
mapServer.queryLayerList({
}).then(function (result) {
  console.log('请求成功:', result);
}).catch(function (result) {
  console.log(' n请求失败:', result);
});

# queryServerInfo(options)

获取服务信息,IGS2.0新增服务

参数:

名称 类型 默认值 描述
options

查询参数

success function

查询成功回调函数,若使用Promise方式则不必填写

failure function

查询失败回调函数,若使用Promise方式则不必填写

Inherited From:
示例

获取服务信息-回调方式

server.queryServerInfo({
  success: function (result) {
    console.log('请求成功:', result);
  },
  failure: function (result) {
    console.log('请求失败:', result);
  }
});

获取服务信息-promise方式

server.queryServerInfo({
})
.then(function (result) {
  console.log('请求成功:', result);
}).catch(function (result) {
  console.log('请求失败:', result);
});

# setSystemLib(options)

设置图层的系统库

参数:

名称 类型 描述
options Object

构造参数

layerId String

图层id,必填

systemLibId String

系统库id,必填

systemLibName String

系统库名,当systemLibId为空时有效,必填

success function

请求成功时的回调

failure function

请求失败时的回调

构造函数
成员变量
方法
事件