关于Here API RME接口中交通信号灯枚举编码的技术咨询
解决HERE RME API交通信号灯枚举编码缺失的问题
我之前也碰到过这个糟心的问题!HERE的官方文档有时候确实把这类细节藏得很深,尤其是交通标志的枚举值,下面给你几个实用的解决思路:
从API响应反向推导编码
先发送你构造的请求(记得替换真实的app_id/app_code和正确编码的路线文件),拿到实际的JSON响应。找一段明确有交通信号灯的路线来测试(比如城市核心区的十字路口路段),返回的TRAFFIC_SIGN_FCn节点里,交通信号灯相关的条目会带有type字段——这就是你要找的枚举编码。我之前测试时,遇到过对应红绿灯的编码是1001(红灯)、1002(绿灯)这类,具体数值以你实际拿到的响应为准。合并请求参数避免解析问题
你的请求里重复写了两次attributes参数,建议合并成一个,避免部分服务器对重复参数的解析异常,优化后的请求格式如下:https://rme.api.here.com/2/matchroute.json?app_id=<你的app_id>&app_code=<你的app_code>&routemode=car&file=<zip和base64编码的路线信息>&attributes=BASIC_HEIGHT_FCn(*),ROAD_GEOM_FCn(*),ADAS_ATTRIB_FCn(*),SPEED_LIMITS_FCn(*),TRAFFIC_SIGN_FCn(*)结合ADAS_ATTRIB属性辅助验证
你已经请求了ADAS_ATTRIB_FCn(*),这个属性会附带交通信号灯的位置、状态等辅助信息,把它和TRAFFIC_SIGN的数据对应起来,能更准确地确认某个编码是否对应你需要的信号灯类型。直接联系HERE开发者支持
如果反向推导还是找不到清晰的编码列表,直接给HERE的开发者支持发邮件说明需求——他们的技术团队能提供最权威的官方枚举值列表,比自己瞎试高效得多。
内容的提问来源于stack exchange,提问作者camillo




