You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Orbeon Forms:将Northing/Easting转换为Lat/Long的实现求助

Orbeon表单BNG转经纬度及生成Google Maps链接解决方案

一、把Northing/Easting传入转换API

先确认你已经有存储Northing和Easting的表单控件(比如命名为northing和easting),通过Orbeon的Service Call功能实现传值:

  • 在Builder中添加「Service」动作,触发时机选择Northing/Easting值变更后(比如控件的value-changed事件)
  • 将Service的URL设置为动态拼接格式:https://api.getthedata.com/bng2latlong/{$easting}/{$northing},用Orbeon的{$控件名}语法自动插入对应控件的值
  • 请求方法选择GET,无需配置请求体

二、从API返回结果中提取Lat/Long

该API返回的JSON格式示例如下:

{
  "status": "ok",
  "data": {
    "lat": 54.63391,
    "lon": -3.20624,
    "bng_easting": 429101,
    "bng_northing": 624009,
    "osgr": "NY291240"
  }
}

提取步骤:

  • 在Service Call的「Response」配置中,选择「JSON Path」作为数据提取方式
  • 为存储Lat和Long的表单控件(比如命名为latitude和longitude)分别设置JSON Path:
    • Latitude:$.data.lat
    • Longitude:$.data.lon
  • 确保控件绑定的节点正确,Service调用成功后会自动将对应值填充到控件中

三、自动构建Google Maps URL

通过Orbeon的计算控件实现动态拼接:

  • 添加一个计算控件(比如命名为google-maps-url)
  • 设置计算表达式:
concat('https://www.google.com/maps/search/?api=1&query=', $latitude, '%2C', $longitude)
  • 勾选「实时计算」选项,确保Lat/Long值变化时URL自动更新

四、测试与验证

  • 填入有效的Northing/Easting值,触发Service调用后检查Lat/Long是否正确填充
  • 查看计算控件生成的URL,点击确认是否能打开对应Google Maps位置

内容的提问来源于stack exchange,提问作者Pete Atkin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 11:35:06