MapGuide HTTP API

系统回溯信息:遇到严重错误。已将回溯写入...PTC... raceback.log请将其发送给|技术支持|。 一、问题分析 这种问题一旦遇上了,如果忘了保存,直接心态爆炸。 该问题一般是显卡驱动的问题。ProE/Creo对显卡的基本要求是:支持Open_GL的3D显卡,分辨率为1024×768像素以上,推荐使用64位独立显卡,显存512MB以上。如若显卡性能太低,打开软件后易自动退出。 二、解决方法 <1>有一个非常简单的方法是:在config.pro文件中,改变图形配置graphics为” win32_gdi”而不是默认的“... 阅读详情

本节将介绍什么是HTTP API,HTTP API与MapGuide Web API的关系,以及如何使用HTTP API。一般情况下,我们并不需要使用HTTP API,而且Viewer API已经包装了某些必需的HTTP API。如果不打算对Viewer API进行一些修改的话,可以忽略本节的内容。

1.1.1        什么是HTTP API?

如果查看客户端API的JavaScript源代码,我们会发现类似如下所示的一些字符串。

OPERATION=<OperationName>&VERSION=1.0.0&...

例如,当用户使用AJAX Viewer选择一个要素时,会调用客户端JavaScript函数RequestSelectionImage,从下面的代码可以看到这个函数就用到了这样的字符串。

function RequestSelectionImage(reqId, viewParams)

{

    url = webAgent + "?OPERATION=GETDYNAMICMAPOVERLAYIMAGE&FORMAT=PNG&VERSION=2.1.0&SESSION=" + sessionId + "&MAPNAME=" + encodeComponent(mapName) + "&SEQ=" + Math.random() + "&CLIENTAGENT=" + encodeComponent(clientAgent) + "&BEHAVIOR=5&SELECTIONCOLOR=" + selectionColor;

    url += viewParams;

    document.getElementById('selOverlay').innerHTML =

        '<img class="mapImage" name="' + reqId + '" id="selectionImage" src="' + url + '" width=' + mapDevW + ' height=' + mapDevH + ' border=0 vspace=0 hspace=0 style="visibility: hidden; width: ' + mapDevW + 'px; height: ' + mapDevH + 'px;" onload="return OnSelectionOverlayImageLoaded(event)">';

    if (opera)

        document.getElementById("selectionImage").src =

document.getElementById("selectionImage").src;

}

执行函数RequestSelectionImage后,会得到类似于如下所示的一个字符串。

http://hostname/mapguide/mapagent/mapagent.fcgi?OPERATION=GETDYNAMICMAPOVERLAYIMAGE&FORMAT=PNG&VERSION=2.1.0&SESSION=a4b1042a-d99e-11de-8000-005056c00008_en_7F0000010AFC0AFB0AFA&MAPNAME=Smoke%20Test%20Map&SEQ=0.9236688035011565&CLIENTAGENT=Ajax%20Viewer&BEHAVIOR=5&SELECTIONCOLOR=0x0000FFFF

很明显,这是一个HTTP请求,它包含了参数OPERATION、FORMAT、VERSION、SESSION、MAPNAME、CLIENTAGENT、BEHAVIOR和SELECTIONCILOR,Web应用服务器端名为mapgent.fcgi的应用程序会处理这个HTTP请求,当处理完请求后,Web应用服务器会返回一张PNG格式的图像,这张图像是被选中要素的渲染结果。

这个HTTP请求使用的就是MapGuide服务HTTP API,MapGuide服务HTTP API定义了MapGuide客户端与MapGuide Web应用服务器的通信接口,为客户端通过Web应用服务器访问MapGuide服务器提供了一条通道。

1.1.2        HTTP API和MapGuide Web API的关系

MapGuide服务HTTP协议和MapGuide Web API有什么关系呢?他们的相同之处是都提供了一种访问MapGuide站点服务、资源服务、要素服务等服务的途径。不同之处是MapGuide Web API是Web应用服务器端接口,由Web应用服务器端的.NET、Java或PHP模块所调用,服务请求被直接发送到MapGuide服务器;而MapGuide服务HTTP协议是一种客户端接口,由客户端来调用,服务请求由部署在Web应用服务器上的MapAgent转发到MapGuide服务器。

目前,MapGuide Studio就是使用MapGuide服务HTTP协议来访问MapGuide服务器上的资源的,所以我们在使用MapGuide Studio的时候只需要知道Web应用服务器的地址,而不需要知道MapGuide服务器的地址,因为部署在Web服务器上的MapAgent知道MapGuide服务器的地址,会将服务请求转发给MapGuide服务器。

1.1.3        使用HTTP API

MapGuide HTTP API中定义的所有操作由如下几部分组成:

l  操作名称:操作的名称,例如“ENUMERATERESOURCES”。

l  操作参数:操作的参数,例如“RESOURCEID”。

l  HTTP状态码:它反映了操作是否成功执行,例如“HTTP/1.1 200”,表示操作执行成功。

l  响应结果:操作返回的数据,可以是XML、PNG、JPG、DWF、W2D等。

HTTP API几乎为MapGuide站点服务、资源服务、要素服务等服务的所有方法都定义了一个对应的操作,这些操作的名称、参数、响应结果基本上和对应方法的名称、参数、返回值一致。HTTP API定义的所有操作使用了一些共同的参数,例如“VERSION”、“LOCALE”等,表 5‑1列出了这些共同的参数。从实现的角度来看,大部分HTTP API中定义的操作最终调用了MapGuide服务中对应的方法。

 

参数名称

是否可选

描述

OPERATION

N

操作的名称。

VERSION

N

操作的版本号,例如“1.0.0”。

LOCALE

Y

本地化信息,

表 5‑1 HTTP API中操作共同的参数

 

下面我们以枚举资源操作为例来介绍HTTP API,资源服务中有如下的方法用于枚举资源:

MgByteReader  MgResourceService::EnumerateResources (

MgResourceIdentifier  resource,

        INT32  depth,

        CREFSTRING  type);

HTTP API也为枚举资源提供了对应的操作,操作的名称和参数如表5‑2所示。

 

参数名称

是否可选

参数值

OPERATION

N

EnumerateResources

VERSION

N

1.0.0

RESOURCEID

N

Library://

TYPE

Y

FeatureSource

DEPTH

N

3

表 5‑2 HTTP API枚举资源操的参数列表

 

如果发送此操作请求,会得到类似于如下所示的一个字符串。

http://hostname/mapGuide/mapagent.fcig?OPERATION=EnumerateResources&VERSION=1.0.0& RESOURCEID=Library:// &TYPE=FeatureSource&DEPTH=3

 

执行此操作后,Web应用服务器会返回表5‑3所示的HTTP状态码之一。

 

状态码

描述

HTTP/1.1 200 OK

成功地获得的资源列表。

HTTP/1.1 401 Unauthorized

用户认证失败。

HTTP/1.1 403 Forbidden

用户没有权限访问被枚举的资源。

表 5‑3 HTTP API枚举资源操的HTTP状态码

 

如果成功地执行此操作,那么最后的响应结果为一个XML,这个XML文件描述了枚举得到的所有资源,在下面的列表中我们省略了这部分内容。

HTTP/1.1 200 OK

Content-Type: text/xml

 

<?xml version="1.0" encoding="UTF-8"?>

……

非常遗憾的是,MapGuide没有为HTTP API提供一个参考手册。幸运的是大部分的操作都对应于MapGuide服务中的一个方法,这些操作的名称、参数、响应结果基本上和对应方法的名称、参数、返回值一致,所以猜也可以猜个八九不离十。如果实在搞不定,可能就需要参考MapGuided源代码,查看文件夹<MgSourceCodeDir>/MgDev/Web/src/HttpHandler下的代码就可以找到每个操作的参数和响应结果类型。

老版QQ原生表情gif动态 这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。 立即下载

相关推荐

SDM量化噪声等效到PLL输出的传递函数推导

在历年文章或书本中少见SDM量化噪声等效到PLL输出的传递函数推导。需了解SDM量化噪声的本质,配合欧拉方程简化,并将Z域转化成S域。最终结合断环处等效到PLL输出的传递函数,方可完成。

u010486560的博客 1406

MapGuide API

1.1  MapGuide APIMapGuide是一个三层架构的Web GIS系统,所以MapGuide API也分为了两大类:服务器端API和客户端API,如图3-1所示。  图3-1 MapGuide API 1.1.1        服务器端API服务器端API也称之为MapGuide Web API,它是运行在Web应用服务器上的一系列类的集合,通过这些API

2219

蓝牙抓包实战:用nrf52840和Wireshark解析广播包与SCAN_RSP的完整流程

本文提供了一份完整的蓝牙抓包实战指南,详细介绍了如何使用nRF52840 Dongle和Wireshark捕获并解析蓝牙广播包与SCAN_RSP。内容涵盖环境搭建、广播事件分析、数据包结构拆解以及常见连接问题的调试技巧,旨在帮助开发者和物联网工程师深入理解BLE底层通信,提升硬件调试能力。

weixin_29279153的博客 495

MapGuide空间参考系API

MapGuide空间参考系 API提供了一些非常易于使用的类,主要功能由以下四个类提供。 l MgCoordinateSystemFactory:这是一个工厂类,主要用于创建MgCoordinateSystem和MgCoordinateSystemTransform的实例。 l MgCoordinateSystem:代表一个空间参考系,主要用于获取空间参考系的定义信息,诸如获取空间参考系的类型...

javahigh1 260

最新小旋风蜘蛛池X6.21解密版+绕过授权带教程

介绍: 1.站群管理:用你的域名在这里添加网站 2.站点优化:站点互链,内容优化 2.系统设置:开启蜘蛛池 3.采集管理(可开启自动采集) 4.缓存设置:推荐开启tkd缓存 其他的用户根据自己的实际情况后台进行配置,通常以下: 1.后台首页(这里显示系统的大致概况) 2.系统设置:蜘蛛池的基本设置(访问开关、跳转、统计等等) 3.站群管理: 1.网站管理(用你的域名在这里添加网站) 2.模型管理(可构建不同类型站点:电影、文章、论坛等等) 3.TKDB调用模板(即:title、keywords、descri

百度SEO程序下载 2935

SAP CO模块实战:成本中心会计分割结构配置全流程(OKES事务码详解)

本文详细解析了SAP CO模块中成本中心会计分割结构的配置全流程,重点讲解了OKES事务码的实战操作。内容涵盖分割结构的概念理解、配置前的次级成本要素与作业类型主数据准备,并通过步骤拆解演示了如何定义分割结构、规则与版本,以及如何将配置关联到成本中心并执行分割。最后提供了常见问题排查与优化建议,旨在帮助顾问及财务人员掌握成本精确分摊的关键配置,确保期末成本核算的准确性。

embedding5hiker的博客 805

MapGuide Web API----通用类、集合类和异常类

1. 通用类通用类包含MgObject、MgDisposable、MgGuardDisposable、MgByteSource、MgByteSink、MgSerializable、MgService、MgNamedSerializable、MgWarnings、MgByteReader、MgColor、MgDateTime、MgServiceType和MgMimeType共14个类,图 3‑3

4163

数字化车间智能排产调度挑战赛(一)—— 数学模型

科大讯飞——数字化车间智能排产调度挑战赛。

Lyyyp的博客 5649

[新书推荐]Autodesk地理信息系统解决方案——FDO、MapGuide、AutoCAD® Map 3D二次开发指南...

MapGuide及其相关技术一直缺乏中文资料,针对这种现状,最近Autodesk上海研究院出版了一本新书,系统的介绍了Autodesk地理信息系统解决方案,包括FDO、MapGuide、Map3D等等,值得一看。网上买更便宜,呵呵 当当网的地址: http://product.dangdang.com/product.aspx?product...

weixin_34232617的博客 418

【嵌入式原理系列-第七篇】ld脚本实战:从零构建MCU内存布局

本文是一篇针对嵌入式开发者的实战指南,详细讲解了如何从零开始为MCU编写ld链接器脚本以构建自定义内存布局。文章以STM32F103C8T6为例,深入剖析了MEMORY和SECTIONS指令的用法,并提供了OTA分区、非易失数据存储等高级定制案例,帮助开发者解决实际工程中的Flash与RAM管理难题,实现对程序运行的深度掌控。

weixin_29271263的博客 248

【论文汇总】Diffusion Models视频生成/视频编辑/可控视频生成/跨模态视频生成

本文总结了Diffusion Models视频生成领域相关的工作,目前共收录142篇,持续更新中。

沉迷单车的追风少年 1672

SWIG和MapGuide Web API

    许多人都知道MapGuide提供了.NET、PHP和Java三种类型的Web API,但是不知道MapGuide是如何创建这三种类型的API的。试想一下,如果分别去创建这三种API,这将是一个很难维护的工作。每次增加或修改一些功能,就需要对三种类型的API都进行修改。所以,MapGuide使用了SWIG来自动生成这三种类型的API。我想这个时候许多人会问,什么是SWIG呢?我怎么从来没有听

3740

流体动力学仿真软件:CFX_(10).案例实践:复杂流场分析

在“Phases”选项卡中,定义参与仿真的不同相。例如,如果您要分析气液两相流,可以定义“Air”和“Water”两个相。

kkchenjj的博客 1687

转 MapGuide HTTP API

本节将介绍什么是HTTP API,HTTP API与MapGuide Web API的关系,以及如何使用HTTP API。一般情况下,我们并不需要使用HTTP API,而且Viewer API已经包装了某些必需的HTTP API。如果不打算对Viewer API进行一些修改的话,可以忽略本节的内容。 1.1.1 什么是HTTP API? 如果查看客户端API的JavaScript...

weixin_30384031的博客 82

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Mapguide的Http登录

  客户端访问Mapguide,有两种方式: 第一种方式: 每次请求都发送用户名密码:例如 请求瓦片尺寸: GET /mapguide/mapagent/mapagent.fcgi?OPERATION=GETDEFAULTTILESIZEY&VERSION=1.0.0&CLIENTAGENT=MapGuide&LOCALE=en Accept: ...

weixin_30474613的博客 83

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

MapGuide Viewer

    MapGuide提供了两种显示地图的方式:基本Web布局(Basic Web Layout)和灵活的Web布局(Flexible Web Layout)。灵活的Web布局可以工作在Windows、Macintosh和Linux,使用了JavaScript,无需任何客户端浏览器插件或私有技术。因为它能够提供更好的灵活性,所以Autodesk推荐用户在开发新的MapGuide应用程序时使用灵活

3046

MapGuide open source开发系列教程四: 体系结构(转贴)

本文转自http://gisman.blogchina.com/5346547.html本来,下面的资料,在英文教程上有,但为了推广MapGuide os在国内的使用,所以特意转了这篇中文。 第二章 MapGuide技术分析 2.1 MapGuide概述与特点 MapGuide是Autodesk公司推出的在网络上发布空间数据的新一代Web GIS平台,为了促进开源Web GIS的发展,Aut...

weixin_30242907的博客 209

MapGuide概述与特点

2.1 MapGuide概述与特点MapGuide是Autodesk公司推出的在网络上发布空间数据的新一代Web GIS平台,为了促进开源Web GIS的发展,Autodesk公司推出了开源版的MapGuide,同时还有商业版MapGuide,开源版本与商业版本相比,软件构架与功能相同,只是开源版本仅支持的数据格式较少,目前支持shp、sdf、ArcSDE、MySQL、ODBC、RASTER、WM

拿破仑 1027

面向企业级的开源WebGIS解决方案--MapGuide(介绍)(转)

1、MapGuide概述MapGuide是Autodesk公司推出的在网络上发布空间数据的新一代Web GIS平台,为了促进开源Web GIS的发展,Autodesk公司推出了开源版的MapGuide,同时还有商业版MapGuide,开源版本与商业版本相比,软件构架与功能相同,只是开源版本仅支持的数据格式较少,目前支持shp、sdf、ArcSDE、MySQL、ODBC、RASTER、WMS

旅途 1000

面向企业级的开源WebGIS解决方案--MapGuide

MapGuide概述MapGuide是Autodesk公司推出的在网络上发布空间数据的新一代Web GIS平台,为了促进开源Web GIS的发展,Autodesk公司推出了开源版的MapGuide,同时还有商业版MapGuide,开源版本与商业版本相比,软件构架与功能相同,只是开源版本仅支持的数据格式较少,目前支持shp、sdf、ArcS

ErikLiu的专栏 1337

MapGuide源码分析----MapGuide Web扩展源码分析

本节中,我们将通过介绍如何完成枚举资源功能来介绍MapGuide Web扩展的部分源代码。在浏览器端的地址栏输入类似如下字符串,就会发送一个枚举资源的HTTP请求。 http://hostname/mapGuide/mapagent.fcig?OPERATION=EnumerateResources&VERSION=1.0.0& RESOURCEID=Library://

2296

面向企业级的开源WebGIS解决方案--MapGuide(介绍)

、MapGuide概述MapGuide是Autodesk公司推出的在网络上发布空间数据的新一代Web GIS平台,为了促进开源Web GIS的发展,Autodesk公司推出了开源版的MapGuide,同时还有商业版MapGuide,开源版本与商业版本相比,软件构架与功能相同,只是开源版本仅支持的数据格式较少,目前支持shp、sdf、ArcSDE、MySQL、ODBC、RASTER、WMS、WF

1528

MapGuide的系统架构

    MapGuide由四个独立的组件(Component)构成,它们分别是:MapGuide ServerMapGuide Web ExtensionsMapGuide StudioMapGuide Viewer    MapGuide Studio和MapGuide Viewer是MapGuide Server的客户端,来自客户端请求使用HTTP协议发送到We

6823
上一篇: 深入FDO----处理栅格图像
下一篇: MapGuide源码分析----MapGuide Web扩展源码分析
MapGuide_Inside
博客等级 码龄17年 340粉丝 71原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值