ArcIMS学习之 HTML Viewer笔记:请求和响应

王朝html/css/js·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

请求

一、最基本函数:

sendToServer --> htmlSendToServer

提交表单 PostForm

(aimsXML.js)

参数:

URLString

XMLRequest Request ArcXML

theType XMLMode的值,默认为1,GET_IMAGE

sendToServer将 theType 赋给XMLMode,然后调用htmlSendToServer提交表单。

二、GET_SERVICE_INFO

由 getStartExtent()构造,并调用sendToServer(imsURL,theString,3);(aimsCommon.js)

具体调用关系为:

viewer.htm在所有Frame装完后,onload一个doIt()--> checkParams --> startMap -->startUp -->getStartExtent (startMap、startUp、getStartExtent都在aimsCommon.js)

三、GET_IMAGE

首次的 GET_IMAGE 是在对GET_SERVICE_INFO的响应中调用的(case 3);

sendMapXML()

writeXML()构造得到 Map 图的 ArcXML

响应

一、处理响应最基本函数:

aimsXML.js中的:

processXML(XMLResponse)根据 XMLMode 处理相关 Response

function processXML(theReplyIn) {

...

switch(XMLMode) {

case 1: //得到地图GET_IMAGE

...

default: //XMLMode >= 1000交给用户定制处理

if (XMLMode >= 1000) {

useCustomFunction(theReply);

} else {

alert(theReply + msgList[19]);

}

}

二、case 3: GET_SERVICE_INFO

保存查到的地图最大值,调用 ProcessStartExtent(theReply) (aimsCommon.js)

-->sendMapXML(){

writeXML();

sendToServer(,,1);

}

三、用户定制:

processXML 中当 XMLMode大于1000时,为用户定制处理:

default://XMLMode >= 1000交给用户定制处理

// send any responses to custom requests off to the custom handler

// XMLMode >= 1000 are reserved for custom requests/responses

if (XMLMode >= 1000) {

useCustomFunction(theReply);

useCustomFunction(theReply)在aimsCustom.js中

接收的Servlet为com.esri.esrimap.Esrimap

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航