首页 / 浏览问题 / WebGIS / 问题详情
数据查询问题
65EXP 2021年01月20日

/iserver/services/data-wk2D1/rest/data  这种数据用几何查询返回错误:

"error": {
        "code": 404,
        "errorMsg": "请求url /iserver/services/data-wk2D1/rest/data/queryResults.json 与资源data 的 url 模板不匹配"
    },

//查询
		function query(X, Y) {
			var latlngs = [
				[X - 0.000010, Y - 0.000010],
				[X + 0.000010, Y - 0.000010],
				[X + 0.000010, Y + 0.000010],
				[X - 0.000010, Y + 0.000010]
			];
			var polygon = L.polygon(latlngs, {
				color: 'red'
			});
			polygon.addTo(map);
			var param = new SuperMap.QueryByGeometryParameters({
				queryParams: {
					name: mapLayerName[indexLayer]
				},
				geometry: polygon
			});
			L.supermap
				.queryService(dataUrl)
				.queryByGeometry(param, function(serviceResult) {
					//var result = serviceResult.result.;
					console.log("查询结果:", serviceResult);
					indexLayer++;
					if (indexLayer < mapLayerName.length) {
						query(X, Y);
					}
				});
		}

问题关闭原因: 已解决

1个回答

你好,返回代码404,说明是没有找到资源,可以先检查对应的iServer服务 和 js代码中的url路径是否有问题。
865EXP 2021年01月20日

数据查询【getFeaturesByGeometry】 几何查询返回400 又是什么情况呢

"error": {
        "code": 400,
        "errorMsg": "1"
    },
//数据查询
		function query(X, Y) {
			var latlngs = [
				[X - 0.000010, Y - 0.000010],
				[X + 0.000010, Y - 0.000010],
				[X + 0.000010, Y + 0.000010],
				[X - 0.000010, Y + 0.000010]
			];
			var polygon = L.polygon(latlngs, {
				color: 'red'
			});
			polygon.addTo(map);
			var param = new SuperMap.GetFeaturesByGeometryParameters({
				datasetNames:["YS_2DPOINT"],//数据集集合中的数据集名称列表。
				geometry: polygon,//用于查询的几何对象。
				spatialQueryMode:"INTERSECT",//空间查询模式常量【相交空间查询模式】
			});
			L.supermap
				.featureService(dataUrl)
				.getFeaturesByGeometry(param, function(serviceResult) {
					isOnClick=true;
					if (typeof serviceResult.error == "undefined" || serviceResult.error == null) {
						console.log("查询结果:", serviceResult);
					} else {
						console.log("错误代码:", serviceResult.error);
					}
				});
		}

400是指你访问的页面域名不存在或者请求错误。
...