首页 / 浏览问题 / 云GIS / 问题详情
iServer扩展坐标转换服务,get参数超过长度
216EXP 2019年09月17日

需求:iServer扩展领域服务,实现同一个坐标系下的多个坐标点的投影和地理坐标互转。

实现方法:把多个坐标点的json转成了字符(http://qa.supermap.com/54965),但是坐标点超过一定的数据量(326个点就报错),get方法就不能调用了,但是iServer扩展服务又只支持get请求,请问这种情况怎么处理呢??

1个回答

您是用get请求进行坐标转换吗? Get方法提交的数据大小长度并没有限制,HTTP协议规范没有对URL长度进行限制。这个限制是特定的浏览器及服务器对它的限制。Post请求理论上是没有大小限制的,你可以用post模拟get请求,或者直接对geometry下的coordtransfer资源进行post请求,对点数组或一组几何对象进行投影坐标系转换
818EXP 2019年09月17日
1.iServer扩展服务只支持get请求。

2.“用post模拟get请求,或者直接对geometry下的coordtransfer资源进行post请求,对点数组或一组几何对象进行投影坐标系转换”这个是什么意思?我现在的多个点坐标,就是json数组啊??
这个功能直接就有是不需要进行扩展的,直接发请求就可以了。而get请求受浏览器影响,参数过多导致url过长导致响应失败,post请求则不会。

post模型get请求的意思是:资源所需的参数不放在 URI 中,而是放在post的请求体中,在post请求的 URI 后跟上参数“_method= GET”来标识该请求。

geometry下的coordtransfer资源,你可以帮助文档搜一下rest api里的这个资源,直接发送post请求即可。

geometry下的coordtransfer资源,只能实现投影坐标转换吧,我现在是需要把同一个坐标系下的地理坐标转成投影坐标

这个资源是可以的,范例不也是将4326转3857吗,如果你不想用这个资源,就直接post模拟你之前发的get请求也是可以的。
...