跳到主要内容

天地图地理编码接口使用RestTemplate请求报错:Not enough variable values available to expand '"keyWord"'

· 阅读需 1 分钟

接口文档地址: http://lbs.tianditu.gov.cn/server/geocodinginterface.html

地理编码响应示例: 请求:

http://api.tianditu.gov.cn/geocoder?ds={"keyWord":"延庆区北京市延庆区延庆镇莲花池村前街50夕阳红养老院"}&tk=您的密钥
Caused by: java.lang.IllegalArgumentException: Not enough variable values available to expand '"keyWord"'

说明

用Spring RestTemplate请求URL为http://api.tianditu.gov.cn/geocoder?ds={"keyWord":"延庆区北京市延庆区延庆镇莲花池村前街50夕阳红养老院"}&tk=您的密钥时报Not enough variable values available to expand '"keyWord"'异常,其根本原因是RestTemplate认为大括号{…}在给定的URL里作为一个URI变量占位符使用,需要后面传递参数。

解决: 可用ds={ds}替代