`
lgx2351
  • 浏览: 171404 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

ajax请求提供接口的讨论

阅读更多

要提供一个查询某点周边的最近设施的功能给同事,在gis端的实现暂不在这里讨论,只讨论前端的接口。写了如下接口:

/*
 * pursor:latest distance query
 * author:liugx
 */
function LatestDistanceQuery(){}
LatestDistanceQuery.getLatestAttribute= function(road_id,mile) {
	var url = "/gis_web/webmap/LatestDistanceQueryAction.do";
	var pars = "ROAD_ID="+road_id+"&MILE="+mile;
	new Ajax.Request(
		url,		
		{	parameters: pars,
			method:"get",
			onCreate:function(){
			},
			onComplete:function(originalRequest){
				var returnText = originalRequest.responseText;
                                return returnText;
				//以下为测试代码
				/*if(returnText){
				    var strAtt = returnText.split(";");
				    for(var i=0;i<strAtt.length;i++){
				    	jsonArr = eval('(' + strAtt[i] + ')'); 
					    alert("NAME="+jsonArr.NAME+",LASTEST_DISTANCE="+jsonArr.LASTEST_DISTANCE+",LYR_FLAG="+jsonArr.LYR_FLAG);
				    }
				}*/
			}
		}
	);
}
 

本想让同事直接在js端调用LatestDistanceQuery.getLatestAttribute()方法就好,返回ajax请求的结果。用的时候发现一个问题,调用LatestDistanceQuery.getLatestAttribute()后,alert结果老是提示underfined。一开始不知道为什么会这样。后来想一想,原来发ajax请求时,因为默认是异步,所以在onComplete还没有完成时,函数就返回了,所以一直返回underfined。只有把ajax请求设置为同步时,才会等候结果返回。

所以,一般我们不用ajax发请求来提供接口。其实,我只要把action提供给同事就好了,调用方是否用ajax请求用调用方决定。

记下,以备录吧。以后可能也会用得到。

分享到:
评论

相关推荐

    axios 处理 302 状态码的解决方法

    比如说浏览器打开了一个单页面(SPA)应用,过了一段时间token(或者session)过期了,这个时候页面上发起 Ajax请求之后,后端返回302状态码跳转到login页面。 我这是使用的是 Vue + axios ,发现 axios 无法拦截到 ...

    vue项目中mock.js的使用及基本用法

    这里主要讨论在vue项目中,使用axios发送ajax请求,mock.js模拟数据的流程。 vue-cli搭建项目后,安装axios和mock.js npm install -S axios npm install -D mockjs 在项目中新建mock.js文件夹,来设置要产生的模拟...

    WebIM-for-PHP5 v1.0.zip

    WebIM应用AJAX请求分发处理 Model.php ============================== WebIM数据模型类 App.php ============================== WebIM 应用入口类 Plugin.php ============================== WebIM ...

    Discuz! X2 R20120628 繁体UTF-8.zip

    FIX 修正搜索接口错误调用了implode()函数问题 FIX 好友申请附言问题 FIX 前台管理中已经审核通过文章,后台还是提示审核的问题 FIX QQ互联暴露匿名帖用户信息的问题 FIX 专题模块可使用...

    Discuz! X2 R20120628 简体GBK.zip

    FIX 修正搜索接口错误调用了implode()函数问题 FIX 好友申请附言问题 FIX 前台管理中已经审核通过文章,后台还是提示审核的问题 FIX QQ互联暴露匿名帖用户信息的问题 FIX 专题...

    Discuz! X2 R20120628 繁体BIG5.zip

    FIX 修正搜索接口错误调用了implode()函数问题 FIX 好友申请附言问题 FIX 前台管理中已经审核通过文章,后台还是提示审核的问题 FIX QQ互联暴露匿名帖用户信息的问题 FIX 专题模块可使用字段说明文字...

    sleep-diary-formats:睡眠日记格式的实验存储库

    示例代码可以将这些格式与,从而为常见功能提供标准接口。 JavaScript库 每种格式都包括用于以相关格式加载和保存文档的示例代码。 它们已打包到一个JavaScript库中,您可以在自己的项目中使用它。 要检查项目是否...

    asp.net知识库

    泛型技巧系列:避免基类及接口约束 New Article 不该用Generics实现Abstract Factory的理由 C#2.0-泛型 C#2.0-extern C#2.0-可空类型 C#2.0-分部类 C#2.0-迭代器 C#2.0 的新增功能学习 泛型的序列化问题 .NET 2.0 ...

    JavaScript王者归来part.1 总数2

     11.6.2 Screen对象--提供显示器分辨率和可用颜色数量信息   11.6.3 Location对象--当前窗口中显示文档的URL的代表   11.6.4 History对象--一个有趣的对象   11.7 总结   第12章 文档对象模型  12.1 什么...

    python入门到高级全栈工程师培训 第3期 附课件代码

    08 接口继承与归一化设计 09 继承顺序之mro线性顺序列表 10 在python2中的继承顺序是什么 11 在子类中调用父类方法 12 super调用父类的方法 13 选择系统作业讲解 第26章 01 学生自主复习 02 分享列表 03 多态 04 ...

    暗夜 WEB IM 20110326(数据库字段有详细说明)

    采用技术asp+ajax,运行环境win98+wps或win2000/winnt/winxp/win2003/win7+IIS 运行regdll.bat注册组件,然后可以正常访问;运行unregdll.bat卸载组件 数据库为im.mdb,测试号码10000~10100,密码都为1,10000为管理...

    Discuz! X2 R20120628 简体UTF-8.zip

    FIX 修正搜索接口错误调用了implode()函数问题 FIX 好友申请附言问题 FIX 前台管理中已经审核通过文章,后台还是提示审核的问题 FIX QQ互联暴露匿名帖用户信息的问题 FIX 专题模块可使用...

Global site tag (gtag.js) - Google Analytics